@djb25/digit-ui-module-vendor 1.0.81 → 1.0.82

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.
@@ -748,7 +748,8 @@ const RegisteredVendorSearch = _ref => {
748
748
  searchParams = _ref.searchParams,
749
749
  isInboxPage = _ref.isInboxPage,
750
750
  selectedTab = _ref.selectedTab,
751
- matchedRoles = _ref.matchedRoles;
751
+ matchedRoles = _ref.matchedRoles,
752
+ ekycVendorCount = _ref.ekycVendorCount;
752
753
  const storedSearchParams = isInboxPage ? Digit.SessionStorage.get("vendor/inbox/searchParams") : Digit.SessionStorage.get("vendor/search/searchParams");
753
754
  const _useTranslation = useTranslation(),
754
755
  t = _useTranslation.t;
@@ -764,6 +765,9 @@ const RegisteredVendorSearch = _ref => {
764
765
  const _useState = useState(false),
765
766
  showAddMenu = _useState[0],
766
767
  setShowAddMenu = _useState[1];
768
+ const _useState2 = useState(null),
769
+ showToast = _useState2[0],
770
+ setShowToast = _useState2[1];
767
771
  const mobileView = window.Digit.Utils.browser.isMobile();
768
772
  const FSTP = Digit.UserService.hasAccess("FSM_EMP_FSTPO") || false;
769
773
  const onSubmitInput = data => {
@@ -807,7 +811,13 @@ const RegisteredVendorSearch = _ref => {
807
811
  const userPath = userType === null || userType === void 0 ? void 0 : userType.toLowerCase();
808
812
  switch (action) {
809
813
  case "VENDOR":
810
- return history.push("/digit-ui/" + userPath + "/vendor/registry/new-vendor");
814
+ if (ekycVendorCount >= 3) {
815
+ setShowToast({
816
+ key: "error",
817
+ action: "You can't create more than 3 eKYC vendors. Please delete an existing vendor before creating a new one."
818
+ });
819
+ return;
820
+ } else return history.push("/digit-ui/" + userPath + "/vendor/registry/new-vendor");
811
821
  case "VEHICLE":
812
822
  return history.push("/digit-ui/" + userPath + "/vendor/registry/new-vehicle");
813
823
  case "DRIVER":
@@ -818,6 +828,9 @@ const RegisteredVendorSearch = _ref => {
818
828
  return history.push("/digit-ui/" + userPath + "/vendor/registry/new-surveyor");
819
829
  }
820
830
  }
831
+ const closeToast = () => {
832
+ setShowToast(null);
833
+ };
821
834
  const getFields = input => {
822
835
  switch (input.type) {
823
836
  case "date":
@@ -952,7 +965,12 @@ const RegisteredVendorSearch = _ref => {
952
965
  className: "submit-bar-search",
953
966
  label: t("ES_COMMON_SEARCH"),
954
967
  submit: true
955
- })))))));
968
+ })))))), showToast && /*#__PURE__*/React.createElement(Toast, {
969
+ error: (showToast === null || showToast === void 0 ? void 0 : showToast.key) === "error",
970
+ label: t(showToast === null || showToast === void 0 ? void 0 : showToast.action),
971
+ onClose: closeToast,
972
+ duration: 5000
973
+ }));
956
974
  };
957
975
 
958
976
  const _excluded$2 = ["id"];
@@ -1114,6 +1132,8 @@ const VendorInbox = props => {
1114
1132
  const userInfo = Digit.SessionStorage.get("User");
1115
1133
  const userRoles = userInfo.info.roles;
1116
1134
  const userType = (_userInfo$info$type = userInfo.info.type) === null || _userInfo$info$type === void 0 ? void 0 : _userInfo$info$type.toLowerCase();
1135
+ const isEmployee = userType === "employee";
1136
+ const isEkycSupervisor = userRoles.some(role => role.code === "EKYC_SUPERVISOR");
1117
1137
  const isVendor = Digit.Utils.vendorAccess() || Digit.UserService.hasAccess(["WT_VENDOR", "EKYC_VENDOR", "VENDOR", "FSM_VENDOR", "DSO", "FSM_DSO"]) || (userRoles === null || userRoles === void 0 ? void 0 : userRoles.some(role => ["FSM_VENDOR", "VENDOR", "EKYC_VENDOR", "WT_VENDOR", "DSO", "FSM_DSO"].includes(typeof role === "string" ? role : role === null || role === void 0 ? void 0 : role.code))) || userType === "vendor";
1118
1138
  const EKYC_ROLES = ["EKYC_SUPERVISOR", "EKYC_SURVEYOR"];
1119
1139
  const isEkycRole = userRoles === null || userRoles === void 0 ? void 0 : userRoles.some(role => EKYC_ROLES.includes((role === null || role === void 0 ? void 0 : role.code) || role));
@@ -1224,7 +1244,8 @@ const VendorInbox = props => {
1224
1244
  mutateVehicle = _Digit$Hooks$fsm$useU.mutate;
1225
1245
  const _Digit$Hooks$fsm$useD3 = Digit.Hooks.fsm.useDriverUpdate(tenantId),
1226
1246
  mutateDriver = _Digit$Hooks$fsm$useD3.mutate;
1227
- const _Digit$Hooks$fsm$useS = Digit.Hooks.fsm.useSupervisorUpdate(tenantId);
1247
+ const _Digit$Hooks$fsm$useS = Digit.Hooks.fsm.useSupervisorUpdate(tenantId),
1248
+ mutateSupervisor = _Digit$Hooks$fsm$useS.mutate;
1228
1249
  const _Digit$Hooks$fsm$useS2 = Digit.Hooks.fsm.useSurveyorUpdate(tenantId),
1229
1250
  mutateSurveyor = _Digit$Hooks$fsm$useS2.mutate;
1230
1251
  useEffect(() => {
@@ -1413,6 +1434,80 @@ const VendorInbox = props => {
1413
1434
  }
1414
1435
  });
1415
1436
  };
1437
+ const onSupervisorUpdate = row => {
1438
+ var _formDetails$owner9, _formDetails$owner0, _formDetails$owner1, _formDetails$owner10;
1439
+ let formDetails = row.original;
1440
+ const newStatus = (formDetails === null || formDetails === void 0 ? void 0 : formDetails.status) === "ACTIVE" ? "DISABLED" : "ACTIVE";
1441
+ const newActive = newStatus === "ACTIVE";
1442
+ const formData = {
1443
+ supervisor: _extends({}, formDetails, {
1444
+ status: newStatus,
1445
+ active: newActive,
1446
+ owner: _extends({}, formDetails === null || formDetails === void 0 ? void 0 : formDetails.owner, {
1447
+ active: newActive,
1448
+ gender: (formDetails === null || formDetails === void 0 ? void 0 : (_formDetails$owner9 = formDetails.owner) === null || _formDetails$owner9 === void 0 ? void 0 : _formDetails$owner9.gender) || "OTHERS",
1449
+ dob: (formDetails === null || formDetails === void 0 ? void 0 : (_formDetails$owner0 = formDetails.owner) === null || _formDetails$owner0 === void 0 ? void 0 : _formDetails$owner0.dob) || new Date("1/1/1970").getTime(),
1450
+ emailId: (formDetails === null || formDetails === void 0 ? void 0 : (_formDetails$owner1 = formDetails.owner) === null || _formDetails$owner1 === void 0 ? void 0 : _formDetails$owner1.emailId) || "abc@egov.com",
1451
+ relationship: (formDetails === null || formDetails === void 0 ? void 0 : (_formDetails$owner10 = formDetails.owner) === null || _formDetails$owner10 === void 0 ? void 0 : _formDetails$owner10.relationship) || "OTHER"
1452
+ })
1453
+ })
1454
+ };
1455
+ mutateSupervisor(formData, {
1456
+ onError: (error, variables) => {
1457
+ setShowToast({
1458
+ key: "error",
1459
+ action: (error === null || error === void 0 ? void 0 : error.message) || error
1460
+ });
1461
+ },
1462
+ onSuccess: (data, variables) => {
1463
+ setShowToast({
1464
+ key: "success",
1465
+ action: "SUPERVISOR",
1466
+ isDisable: newStatus === "DISABLED"
1467
+ });
1468
+ queryClient.invalidateQueries("FSM_SUPERVISOR_SEARCH");
1469
+ queryClient.invalidateQueries("SUPERVISOR_SEARCH");
1470
+ props.refetchData();
1471
+ }
1472
+ });
1473
+ };
1474
+ const onSurveyorUpdate = row => {
1475
+ var _formDetails$owner11, _formDetails$owner12, _formDetails$owner13, _formDetails$owner14;
1476
+ let formDetails = row.original;
1477
+ const newStatus = (formDetails === null || formDetails === void 0 ? void 0 : formDetails.status) === "ACTIVE" ? "DISABLED" : "ACTIVE";
1478
+ const newActive = newStatus === "ACTIVE";
1479
+ const formData = {
1480
+ surveyor: _extends({}, formDetails, {
1481
+ status: newStatus,
1482
+ active: newActive,
1483
+ owner: _extends({}, formDetails === null || formDetails === void 0 ? void 0 : formDetails.owner, {
1484
+ active: newActive,
1485
+ gender: (formDetails === null || formDetails === void 0 ? void 0 : (_formDetails$owner11 = formDetails.owner) === null || _formDetails$owner11 === void 0 ? void 0 : _formDetails$owner11.gender) || "OTHERS",
1486
+ dob: (formDetails === null || formDetails === void 0 ? void 0 : (_formDetails$owner12 = formDetails.owner) === null || _formDetails$owner12 === void 0 ? void 0 : _formDetails$owner12.dob) || new Date("1/1/1970").getTime(),
1487
+ emailId: (formDetails === null || formDetails === void 0 ? void 0 : (_formDetails$owner13 = formDetails.owner) === null || _formDetails$owner13 === void 0 ? void 0 : _formDetails$owner13.emailId) || "abc@egov.com",
1488
+ relationship: (formDetails === null || formDetails === void 0 ? void 0 : (_formDetails$owner14 = formDetails.owner) === null || _formDetails$owner14 === void 0 ? void 0 : _formDetails$owner14.relationship) || "OTHER"
1489
+ })
1490
+ })
1491
+ };
1492
+ mutateSurveyor(formData, {
1493
+ onError: (error, variables) => {
1494
+ setShowToast({
1495
+ key: "error",
1496
+ action: (error === null || error === void 0 ? void 0 : error.message) || error
1497
+ });
1498
+ },
1499
+ onSuccess: (data, variables) => {
1500
+ setShowToast({
1501
+ key: "success",
1502
+ action: "SURVEYOR",
1503
+ isDisable: newStatus === "DISABLED"
1504
+ });
1505
+ queryClient.invalidateQueries("FSM_SURVEYOR_SEARCH");
1506
+ queryClient.invalidateQueries("SURVEYOR_SEARCH");
1507
+ props.refetchData();
1508
+ }
1509
+ });
1510
+ };
1416
1511
  const onVendorSelect = (row, selectedOption) => {
1417
1512
  let driverData = row.original;
1418
1513
  let existingVendor = driverData === null || driverData === void 0 ? void 0 : driverData.vendor;
@@ -1767,7 +1862,7 @@ const VendorInbox = props => {
1767
1862
  const serviceType = ((_additionalDetails2 = additionalDetails) === null || _additionalDetails2 === void 0 ? void 0 : _additionalDetails2.serviceType) || "N/A";
1768
1863
  return /*#__PURE__*/React.createElement("div", null, serviceType);
1769
1864
  }
1770
- }, ...(!isVendor ? [{
1865
+ }, ...(isEmployee ? [{
1771
1866
  Header: t("ES_VENDOR_REGISTRY_INBOX_ENABLED"),
1772
1867
  id: "status",
1773
1868
  accessor: row => {
@@ -2142,7 +2237,7 @@ const VendorInbox = props => {
2142
2237
  width: "100%",
2143
2238
  minWidth: "250px"
2144
2239
  },
2145
- disable: !supervisors.length
2240
+ disable: !supervisors.length || isEkycSupervisor
2146
2241
  });
2147
2242
  }
2148
2243
  }] : []), {
@@ -2153,7 +2248,30 @@ const VendorInbox = props => {
2153
2248
  let row = _ref32.row;
2154
2249
  return GetCell((_row$original25 = row.original) !== null && _row$original25 !== void 0 && (_row$original25$audit = _row$original25.auditDetails) !== null && _row$original25$audit !== void 0 && _row$original25$audit.createdTime ? Digit.DateUtils.ConvertEpochToDate((_row$original26 = row.original) === null || _row$original26 === void 0 ? void 0 : (_row$original26$audit = _row$original26.auditDetails) === null || _row$original26$audit === void 0 ? void 0 : _row$original26$audit.createdTime) : "");
2155
2250
  }
2156
- }];
2251
+ }, ...(!isEmployee ? [{
2252
+ Header: t("ES_FSM_REGISTRY_INBOX_ENABLED"),
2253
+ id: "status",
2254
+ accessor: row => row.status || "",
2255
+ Cell: _ref33 => {
2256
+ var _row$original27;
2257
+ let row = _ref33.row;
2258
+ return /*#__PURE__*/React.createElement(ToggleSwitch, {
2259
+ style: {
2260
+ display: "flex",
2261
+ justifyContent: "left"
2262
+ },
2263
+ value: ((_row$original27 = row.original) === null || _row$original27 === void 0 ? void 0 : _row$original27.status) === "DISABLED" ? false : true,
2264
+ onChange: () => {
2265
+ if (props.selectedTab === "SUPERVISOR") {
2266
+ onSupervisorUpdate(row);
2267
+ } else if (props.selectedTab === "SURVEYOR") {
2268
+ onSurveyorUpdate(row);
2269
+ }
2270
+ },
2271
+ name: "switch-" + row.id
2272
+ });
2273
+ }
2274
+ }] : [])];
2157
2275
  default:
2158
2276
  return [];
2159
2277
  }
@@ -2519,7 +2637,8 @@ const VendorInbox = props => {
2519
2637
  searchParams: props.searchParams,
2520
2638
  onTabChange: props.onTabChange,
2521
2639
  selectedTab: props.selectedTab,
2522
- matchedRoles: matchedRoles
2640
+ matchedRoles: matchedRoles,
2641
+ ekycVendorCount: props.ekycVendorCount
2523
2642
  }), /*#__PURE__*/React.createElement("div", {
2524
2643
  className: "result",
2525
2644
  style: {
@@ -2702,6 +2821,11 @@ const SearchVendor = () => {
2702
2821
  vendorData = _Digit$Hooks$fsm$useD2.data,
2703
2822
  isVendorLoading = _Digit$Hooks$fsm$useD2.isLoading,
2704
2823
  refetchVendor = _Digit$Hooks$fsm$useD2.refetch;
2824
+ const ekycVendorCount = vendorData === null || vendorData === void 0 ? void 0 : vendorData.filter(ele => {
2825
+ var _ele$dsoDetails, _ele$dsoDetails$addit, _ele$dsoDetails$addit2;
2826
+ return (ele === null || ele === void 0 ? void 0 : (_ele$dsoDetails = ele.dsoDetails) === null || _ele$dsoDetails === void 0 ? void 0 : (_ele$dsoDetails$addit = _ele$dsoDetails.additionalDetails) === null || _ele$dsoDetails$addit === void 0 ? void 0 : (_ele$dsoDetails$addit2 = _ele$dsoDetails$addit.serviceType) === null || _ele$dsoDetails$addit2 === void 0 ? void 0 : _ele$dsoDetails$addit2.toLowerCase()) === "ekyc";
2827
+ }).length;
2828
+ console.log(ekycVendorCount);
2705
2829
  const inboxTotalCount = (dsoData === null || dsoData === void 0 ? void 0 : dsoData.totalCount) || 50;
2706
2830
  useEffect(() => {
2707
2831
  var _location$state;
@@ -2770,8 +2894,8 @@ const SearchVendor = () => {
2770
2894
  var _dsoData$vehicle;
2771
2895
  const vehicles = dsoData === null || dsoData === void 0 ? void 0 : (_dsoData$vehicle = dsoData.vehicle) === null || _dsoData$vehicle === void 0 ? void 0 : _dsoData$vehicle.map(data => {
2772
2896
  let vendor = vendorData.find(ele => {
2773
- var _ele$dsoDetails, _ele$dsoDetails$vehic;
2774
- return (_ele$dsoDetails = ele.dsoDetails) === null || _ele$dsoDetails === void 0 ? void 0 : (_ele$dsoDetails$vehic = _ele$dsoDetails.vehicles) === null || _ele$dsoDetails$vehic === void 0 ? void 0 : _ele$dsoDetails$vehic.find(vehicle => vehicle.id === data.id);
2897
+ var _ele$dsoDetails2, _ele$dsoDetails2$vehi;
2898
+ return (_ele$dsoDetails2 = ele.dsoDetails) === null || _ele$dsoDetails2 === void 0 ? void 0 : (_ele$dsoDetails2$vehi = _ele$dsoDetails2.vehicles) === null || _ele$dsoDetails2$vehi === void 0 ? void 0 : _ele$dsoDetails2$vehi.find(vehicle => vehicle.id === data.id);
2775
2899
  });
2776
2900
  if (vendor) {
2777
2901
  var _vendor$dsoDetails, _vendor$dsoDetails$ve;
@@ -2793,8 +2917,8 @@ const SearchVendor = () => {
2793
2917
  var _dsoData$driver;
2794
2918
  const drivers = dsoData === null || dsoData === void 0 ? void 0 : (_dsoData$driver = dsoData.driver) === null || _dsoData$driver === void 0 ? void 0 : _dsoData$driver.map(data => {
2795
2919
  let vendor = vendorData.find(ele => {
2796
- var _ele$dsoDetails2, _ele$dsoDetails2$driv;
2797
- return (_ele$dsoDetails2 = ele.dsoDetails) === null || _ele$dsoDetails2 === void 0 ? void 0 : (_ele$dsoDetails2$driv = _ele$dsoDetails2.drivers) === null || _ele$dsoDetails2$driv === void 0 ? void 0 : _ele$dsoDetails2$driv.find(driver => driver.id === data.id);
2920
+ var _ele$dsoDetails3, _ele$dsoDetails3$driv;
2921
+ return (_ele$dsoDetails3 = ele.dsoDetails) === null || _ele$dsoDetails3 === void 0 ? void 0 : (_ele$dsoDetails3$driv = _ele$dsoDetails3.drivers) === null || _ele$dsoDetails3$driv === void 0 ? void 0 : _ele$dsoDetails3$driv.find(driver => driver.id === data.id);
2798
2922
  });
2799
2923
  if (vendor) {
2800
2924
  return _extends({}, data, {
@@ -2919,7 +3043,8 @@ const SearchVendor = () => {
2919
3043
  onTabChange: onTabChange,
2920
3044
  selectedTab: tab,
2921
3045
  refetchData: refetchData,
2922
- refetchVendor: refetchVendorData
3046
+ refetchVendor: refetchVendorData,
3047
+ ekycVendorCount: ekycVendorCount
2923
3048
  }), showToast && /*#__PURE__*/React.createElement(Toast, {
2924
3049
  error: showToast.key === "error",
2925
3050
  label: t(showToast.action),