diff --git a/health/micro-ui/web/micro-ui-internals/example/public/index.html b/health/micro-ui/web/micro-ui-internals/example/public/index.html index 751d04de13..59cad0fdee 100644 --- a/health/micro-ui/web/micro-ui-internals/example/public/index.html +++ b/health/micro-ui/web/micro-ui-internals/example/public/index.html @@ -12,7 +12,8 @@ DIGIT - + + diff --git a/health/micro-ui/web/micro-ui-internals/packages/css/package.json b/health/micro-ui/web/micro-ui-internals/packages/css/package.json index 18c0aa402c..d11c662dd2 100644 --- a/health/micro-ui/web/micro-ui-internals/packages/css/package.json +++ b/health/micro-ui/web/micro-ui-internals/packages/css/package.json @@ -1,6 +1,6 @@ { "name": "@egovernments/digit-ui-health-css", - "version": "0.2.41", + "version": "0.2.42", "license": "MIT", "main": "dist/index.css", "author": "Jagankumar ", @@ -66,4 +66,4 @@ "digit-ui", "css" ] -} \ No newline at end of file +} diff --git a/health/micro-ui/web/micro-ui-internals/packages/css/src/pages/employee/campaign.scss b/health/micro-ui/web/micro-ui-internals/packages/css/src/pages/employee/campaign.scss index 723e6f61b2..4cd4193959 100644 --- a/health/micro-ui/web/micro-ui-internals/packages/css/src/pages/employee/campaign.scss +++ b/health/micro-ui/web/micro-ui-internals/packages/css/src/pages/employee/campaign.scss @@ -269,7 +269,7 @@ } .digit-popup-wrapper.custom-pop-up-mapping { - width: fit-content !important; + max-width: 35rem; .digit-popup-footer { diff --git a/health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/AddOrEditMapping.js b/health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/AddOrEditMapping.js index 1e59447401..4ef8e0fe84 100644 --- a/health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/AddOrEditMapping.js +++ b/health/micro-ui/web/micro-ui-internals/packages/modules/campaign-manager/src/components/AddOrEditMapping.js @@ -62,7 +62,10 @@ const AddOrEditMapping = forwardRef(({ schema, dispatch, boundaryHierarchy, all { return (
- +
+ + * +
- +
+ + * +
{ updated: true, }; case "EDIT_DATA": - const editedData = state.data.map(item => + const editedData = state.data.map(item => item.id === action.payload.id ? { ...item, ...action.payload } : item ); return { @@ -108,8 +108,8 @@ const reducer = (state, action) => { // }; // } // Check facility code first, if not present then check facility name - if ((facilityCode && facilityCode === action?.payload?.row?.[action.t("HCM_ADMIN_CONSOLE_FACILITY_CODE")]) || - (!facilityCode && facilityName === action?.payload?.row?.[action.t(action?.schemas?.find((i) => i.description === "Facility Name")?.name)])) { + if ((facilityCode && facilityCode === action?.payload?.row?.[action.t("HCM_ADMIN_CONSOLE_FACILITY_CODE")]) || + (!facilityCode && facilityName === action?.payload?.row?.[action.t(action?.schemas?.find((i) => i.description === "Facility Name")?.name)])) { return { ...item, [BoundaryLoc]: action?.payload?.selectedBoundary?.map((i) => i?.code)?.join(","), @@ -158,8 +158,8 @@ const reducer = (state, action) => { // }; // } // return item; - if ((facilityCode && facilityCode === action?.payload?.row?.[action.t("HCM_ADMIN_CONSOLE_FACILITY_CODE")]) || - (!facilityCode && facilityName === action?.payload?.row?.[action.t(action?.schemas?.find((i) => i.description === "Facility Name")?.name)])) { + if ((facilityCode && facilityCode === action?.payload?.row?.[action.t("HCM_ADMIN_CONSOLE_FACILITY_CODE")]) || + (!facilityCode && facilityName === action?.payload?.row?.[action.t(action?.schemas?.find((i) => i.description === "Facility Name")?.name)])) { return { ...item, [ActiveLoc]: action?.payload?.selectedStatus?.code, @@ -186,10 +186,10 @@ const reducer = (state, action) => { case "FILTER_BY_ACTIVE": const tempFilter = action.payload?.filter ? state.data?.filter((i) => - action?.currentCategories === "HCM_UPLOAD_USER_MAPPING" - ? i?.[action.t(action?.schemas?.find((i) => i.description === "User Usage")?.name)] === "Active" - : i?.[action.t(action?.schemas?.find((i) => i.description === "Facility usage")?.name)] === "Active" - ) + action?.currentCategories === "HCM_UPLOAD_USER_MAPPING" + ? i?.[action.t(action?.schemas?.find((i) => i.description === "User Usage")?.name)] === "Active" + : i?.[action.t(action?.schemas?.find((i) => i.description === "Facility usage")?.name)] === "Active" + ) : state.data; const tempActive = getPageData(tempFilter, 1, state.rowsPerPage); return { @@ -539,23 +539,36 @@ function UploadDataMapping({ formData, onSelect, currentCategories }) { setConvertedSchema(schema); } }, [SchemasAJV, type]); - + const validateData = (data) => { // Phone Number conversion const phoneNumberKey = t(Schemas?.find((i) => i.description === "Phone Number")?.name); if (data[phoneNumberKey] !== undefined) { - data[phoneNumberKey] = Number(data[phoneNumberKey]); + data[phoneNumberKey] = Number(data[phoneNumberKey]); } // Capacity conversion const capacityKey = t(Schemas?.find((i) => i.description === "Capacity")?.name); if (data[capacityKey] !== undefined) { - data[capacityKey] = Number(data[capacityKey]); + data[capacityKey] = Number(data[capacityKey]); } const ajv = new Ajv({ strict: false }); // Initialize Ajv let validate = ajv.compile(translatedSchema[type]); const errors = []; // Array to hold validation errors - + + const boundaryCodeFac = t(Schemas?.find((i) => i.description === "Boundary Code")?.name); + if (data[boundaryCodeFac]?.trim()?.length === 0) { + setShowToast({ label: t("HCM_MAPPING_NO_BOUNDARY_ERROR"), isError: "error" }); + return + } + + const boundaryCode = t(Schemas?.find((i) => i.description === "Boundary Code (Mandatory)")?.name); + if (data[boundaryCode]?.trim()?.length === 0) { + setShowToast({ label: t("HCM_MAPPING_NO_BOUNDARY_ERROR"), isError: "error" }); + return + } + + data = [data] data.forEach((item, index) => { if (!validate(item)) { @@ -613,27 +626,26 @@ function UploadDataMapping({ formData, onSelect, currentCategories }) { const childData = childRef.current.getData(); // Convert data types first const validationResult = validateData(childData); - + if (validationResult.isValid) { - if(typeOfOperation === "add") - { - dispatch({ - type: "ADD_DATA", - payload: childData, - schemas: Schemas, - t: t + if (typeOfOperation === "add") { + dispatch({ + type: "ADD_DATA", + payload: childData, + schemas: Schemas, + t: t }); } - else{ - dispatch({ - type: "EDIT_DATA", - payload: childData, - schemas: Schemas, - t: t + else { + dispatch({ + type: "EDIT_DATA", + payload: childData, + schemas: Schemas, + t: t }); } - + setShowToast({ label: t("HCM_MAPPING_ADDED"), isError: "success" }); return true; } else { @@ -765,7 +777,7 @@ function UploadDataMapping({ formData, onSelect, currentCategories }) { size={"small"} isDisabled={row?.[t(Schemas?.find((i) => i.description === "User Usage")?.name)] === "Inactive" ? true : false} variation={"teritiary"} - label={listOfBoundaries?.length > 0 ? t("CHANGE_BOUNDARY") : t("ADD _BOUNDARY")} + label={Array.isArray(listOfBoundaries) && listOfBoundaries?.length > 0 ? t("CHANGE_BOUNDARY") : t("ADD _BOUNDARY")} onClick={() => { setShowPopUp(row); }} @@ -779,17 +791,17 @@ function UploadDataMapping({ formData, onSelect, currentCategories }) { cell: (row) => { return (