Skip to content

Commit

Permalink
OBPS and FSM chnages for creating new application
Browse files Browse the repository at this point in the history
  • Loading branch information
chinmoy-eGov committed Jun 19, 2024
1 parent 9e3fc6c commit 2952580
Show file tree
Hide file tree
Showing 12 changed files with 448 additions and 440 deletions.
4 changes: 2 additions & 2 deletions frontend/micro-ui/web/micro-ui-internals/example/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,10 @@
"@egovernments/digit-ui-module-bills": "1.7.24",
"@egovernments/digit-ui-module-common": "1.7.24",
"@egovernments/digit-ui-module-engagement": "1.7.24",
"@egovernments/digit-ui-module-fsm": "1.7.24",
"@egovernments/digit-ui-module-fsm": "1.7.25",
"@egovernments/digit-ui-module-mcollect": "1.7.24",
"@egovernments/digit-ui-module-noc": "1.7.24",
"@egovernments/digit-ui-module-obps": "1.7.24",
"@egovernments/digit-ui-module-obps": "1.7.25",
"@egovernments/digit-ui-module-pgr": "1.7.27",
"@egovernments/digit-ui-module-pt": "1.7.24",
"@egovernments/digit-ui-module-receipts": "1.7.24",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ const Urls = {
location: {
localities: `/egov-location/location/v11/boundarys/_search?hierarchyTypeCode=ADMIN&boundaryType=Locality`,
revenue_localities: `/egov-location/location/v11/boundarys/_search?hierarchyTypeCode=REVENUE&boundaryType=Locality`,
gramPanchayats: `/egov-location/location/v11/boundarys/_search?hierarchyTypeCode=REVENUE&boundaryType=GP`,
},

pgr_search: `/pgr-services/v2/request/_search`,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,4 +19,13 @@ export const LocationService = {
});
return response;
},
getGramPanchayats: async (tenantId) => {
const response = await ServiceRequest({
serviceName: "getGramPanchayats",
url: Urls.location.gramPanchayats,
params: { tenantId: tenantId },
useCache: true,
});
return response;
},
};
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@egovernments/digit-ui-module-fsm",
"version": "1.7.24",
"version": "1.7.25",
"license": "MIT",
"main": "dist/index.js",
"description": "Digit FSM Module",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,14 @@ const AdvanceCollection = ({ t, config, onSelect, formData, userType, FSMTextFie
{ staleTime: Infinity }
);

const [vehicle, setVehicle] = useState({ label: formData?.tripData?.vehicleCapacity });
const [vehicle, setVehicle] = useState({
label: formData?.tripData?.vehicleCapacity,
});
const [billError, setError] = useState(false);

const { isLoading: isVehicleMenuLoading, data: vehicleData } = Digit.Hooks.fsm.useMDMS(state, "Vehicle", "VehicleType", { staleTime: Infinity });
const { isLoading: isVehicleMenuLoading, data: vehicleData } = Digit.Hooks.fsm.useMDMS(state, "Vehicle", "VehicleType", {
staleTime: Infinity,
});

const { data: dsoData, isLoading: isDsoLoading, isSuccess: isDsoSuccess, error: dsoError } = Digit.Hooks.fsm.useDsoSearch(tenantId, {
limit: -1,
Expand All @@ -33,13 +37,12 @@ const AdvanceCollection = ({ t, config, onSelect, formData, userType, FSMTextFie
name: "advanceAmount",
validation: {
isRequired: true,
disabled: true,
min: "0",
pattern: `^[0-9]+`,
title: t("ES_NEW_APPLICATION_AMOUNT_INVALID"),
},

default: url.includes("modify") ? applicationData?.advanceAmount : formData?.advancepaymentPreference?.advanceAmount,
default: formData?.advanceAmount,
isMandatory: true,
},
];
Expand All @@ -51,100 +54,87 @@ const AdvanceCollection = ({ t, config, onSelect, formData, userType, FSMTextFie
onSelect(config.key, { ...formData[config.key], advanceAmount: value });
}

// useEffect(() => {
// (async () => {
// if (formData?.tripData?.vehicleType !== vehicle) {
// setVehicle({ label: formData?.tripData?.vehicleType?.capacity });
// }

// if (
// formData?.propertyType &&
// formData?.subtype &&
// formData?.address &&
// formData?.tripData?.vehicleType?.capacity &&
// formData?.address?.propertyLocation?.code === "WITHIN_ULB_LIMITS"
// ) {
// const capacity = formData?.tripData?.vehicleType.capacity;
// const { slum: slumDetails } = formData.address;
// const slum = slumDetails ? "YES" : "NO";
// const billingDetails = await Digit.FSMService.billingSlabSearch(tenantId, {
// propertyType: formData?.subtype,
// capacity,
// slum,
// });

// const billSlab = billingDetails?.billingSlab?.length && billingDetails?.billingSlab[0];

// if (billSlab?.price || billSlab?.price === 0) {
// const totaltripAmount = billSlab.price * formData.tripData.noOfTrips;
// const isTotalAmountOdd=totaltripAmount %2 !==0;

// const { advanceAmount: advanceBalanceAmount } = await Digit.FSMService.advanceBalanceCalculate(tenantId, {
// totalTripAmount: totaltripAmount,
// });
// Digit.SessionStorage.set("total_amount", totaltripAmount);
// Digit.SessionStorage.set("advance_amount", advanceBalanceAmount);
// setTotalAmount(totaltripAmount);
// setAdvanceAmounts(advanceBalanceAmount);
// !url.includes("modify") || (url.includes("modify") && advanceBalanceAmount > formData?.advancepaymentPreference?.advanceAmount)
// ? setValue({
// advanceAmount: (isTotalAmountOdd ? Math.ceil(advanceBalanceAmount) : advanceBalanceAmount) ,
// })
// : null;
// setError(false);
// } else {
// sessionStorage.removeItem("Digit.total_amount");
// sessionStorage.removeItem("Digit.advance_amount");
// setError(true);
// }
// }
// })();
// }, [formData?.propertyType, formData?.subtype, formData?.address?.slum, formData?.tripData?.vehicleType?.capacity, formData?.tripData?.noOfTrips]);

// useEffect(() => {
// (async () => {
// if (formData?.address?.propertyLocation?.code === "FROM_GRAM_PANCHAYAT" && formData.tripData.noOfTrips && formData.tripData.amountPerTrip) {
// const totaltripAmount = formData.tripData.amountPerTrip * formData.tripData.noOfTrips;

// const { advanceAmount: advanceBalanceAmount } = await Digit.FSMService.advanceBalanceCalculate(tenantId, {
// totalTripAmount: totaltripAmount,
// });
// Digit.SessionStorage.set("total_amount", totaltripAmount);
// Digit.SessionStorage.set("advance_amount", advanceBalanceAmount);
// setTotalAmount(totaltripAmount);
// setAdvanceAmounts(advanceBalanceAmount);
// if (formData?.address?.propertyLocation?.code === "FROM_GRAM_PANCHAYAT" && url.includes("modify")) {
// setValue({
// advanceAmount: 0,
// });
// } else if (
// !url.includes("modify") ||
// url.includes("modify") ||
// (formData?.advancepaymentPreference?.advanceAmount > 0 && advanceBalanceAmount > formData?.advancepaymentPreference?.advanceAmount)
// ) {
// setValue({
// advanceAmount: advanceBalanceAmount,
// });
// }

// setError(false);
// }
// })();
// }, [formData.tripData.noOfTrips, formData.tripData.amountPerTrip]);
useEffect(() => {
(async () => {
if (formData?.tripData?.vehicleType !== vehicle) {
setVehicle({ label: formData?.tripData?.vehicleType?.capacity });
}

if (
formData?.propertyType &&
formData?.subtype &&
formData?.address &&
formData?.tripData?.vehicleType?.capacity &&
formData?.address?.propertyLocation?.code === "WITHIN_ULB_LIMITS"
) {
const capacity = formData?.tripData?.vehicleType.capacity;
const { slum: slumDetails } = formData.address;
const slum = slumDetails ? "YES" : "NO";
const billingDetails = await Digit.FSMService.billingSlabSearch(tenantId, {
propertyType: formData?.subtype,
capacity,
slum,
});

const billSlab = billingDetails?.billingSlab?.length && billingDetails?.billingSlab[0];

if (billSlab?.price || billSlab?.price === 0) {
const totaltripAmount = billSlab.price * formData.tripData.noOfTrips;

const { advanceAmount: advanceBalanceAmount } = await Digit.FSMService.advanceBalanceCalculate(tenantId, {
totalTripAmount: totaltripAmount,
});
Digit.SessionStorage.set("total_amount", totaltripAmount);
Digit.SessionStorage.set("advance_amount", advanceBalanceAmount);
setTotalAmount(totaltripAmount);
setAdvanceAmounts(advanceBalanceAmount);
if (!url.includes("modify") || (url.includes("modify") && advanceBalanceAmount > formData?.advancepaymentPreference?.advanceAmount)) {
setValue({
advanceAmount: advanceBalanceAmount,
});
}

setError(false);
} else {
sessionStorage.removeItem("Digit.total_amount");
sessionStorage.removeItem("Digit.advance_amount");
setError(true);
}
}
})();
}, [formData?.propertyType, formData?.subtype, formData?.address?.slum, formData?.tripData?.vehicleType?.capacity, formData?.tripData?.noOfTrips]);

useEffect(() => {
if (formData?.tripData?.amount){
onSelect(config.key, { ...formData[config.key], advanceAmount: (formData?.tripData?.amount/2) });
}
}, [formData.tripData.amount]);
console.log(formData[config.key],"11111111111")
(async () => {
if (formData?.address?.propertyLocation?.code === "FROM_GRAM_PANCHAYAT" && formData.tripData.noOfTrips && formData.tripData.amountPerTrip) {
const totaltripAmount = formData.tripData.amountPerTrip * formData.tripData.noOfTrips;

const { advanceAmount: advanceBalanceAmount } = await Digit.FSMService.advanceBalanceCalculate(tenantId, {
totalTripAmount: totaltripAmount,
});
Digit.SessionStorage.set("total_amount", totaltripAmount);
Digit.SessionStorage.set("advance_amount", advanceBalanceAmount);
setTotalAmount(totaltripAmount);
setAdvanceAmounts(advanceBalanceAmount);
if (!url.includes("modify") || (url.includes("modify") && advanceBalanceAmount > formData?.advancepaymentPreference?.advanceAmount)) {
setValue({
advanceAmount: advanceBalanceAmount,
});
}

setError(false);
}
})();
}, [formData.tripData.noOfTrips, formData.tripData.amountPerTrip]);

return isVehicleMenuLoading && isDsoLoading ? (
<Loader />
) : (
<div>
{formData?.tripData?.amountPerTrip !== 0 &&
inputs?.map((input, index) => {
let currentValue = formData && formData[config.key] && formData[config.key][input.name];

return (
<React.Fragment key={index}>
<LabelFieldPair key={index}>
Expand All @@ -154,36 +144,51 @@ const AdvanceCollection = ({ t, config, onSelect, formData, userType, FSMTextFie
</CardLabel>
<div className="field">
<TextInput
disabled={
url.includes("modify")
? formData?.address?.propertyLocation?.code === "FROM_GRAM_PANCHAYAT" && applicationData?.advanceAmount > 0
? false
: true
: false
}
disabled={url.includes("modify") ? true : false}
type={input.type}
key={input.name}
style={FSMTextFieldStyle}
onChange={(e) => setAdvanceAmount(e.target.value)}
value={formData && formData[config.key] ? formData[config.key][input.name] : applicationData?.advanceAmount}
value={input.default ? input.default : formData && formData[config.key] ? formData[config.key][input.name] : 0}
{...input.validation}
/>
{currentValue > TotalAmount && (
<CardLabelError style={{ width: "100%", marginTop: "-15px", fontSize: "14px", marginBottom: "0px" }}>
<CardLabelError
style={{
width: "100%",
marginTop: "-15px",
fontSize: "14px",
marginBottom: "0px",
}}
>
{t("FSM_ADVANCE_AMOUNT_MAX")}
</CardLabelError>
)}
{currentValue < AdvanceAmount && (
<CardLabelError style={{ width: "100%", marginTop: "-15px", fontSize: "14px", marginBottom: "0px" }}>
<CardLabelError
style={{
width: "100%",
marginTop: "-15px",
fontSize: "14px",
marginBottom: "0px",
}}
>
{t("FSM_ADVANCE_AMOUNT_MIN")}
</CardLabelError>
)}
{url.includes("modify-application") &&
Number(AdvanceAmount) === 0 &&
applicationData?.advanceAmount > 0 &&
Number(formData?.tripData?.amountPerTrip) > 0 &&
Number(currentValue) === 0 && (
<CardLabelError style={{ width: "100%", marginTop: "-15px", fontSize: "14px", marginBottom: "0px" }}>
{t("FSM_ADVANCE_AMOUNT_LESS_THAN_AMOUNT_PER_TRIP")}
<CardLabelError
style={{
width: "100%",
marginTop: "-15px",
fontSize: "14px",
marginBottom: "0px",
}}
>
{t("FSM_ADVANCE_AMOUNT_NOT_ZERO")}
</CardLabelError>
)}
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ const CheckSlum = ({ t, config, onSelect, userType, formData }) => {
sessionStorage.removeItem("Digit.total_amount");
onSelect(config.key, { slumArea });
}

useEffect(() => {
if (formData?.address?.propertyLocation?.code === "FROM_GRAM_PANCHAYAT") onSkip();
if (formData?.address?.propertyLocation === "FROM_GRAM_PANCHAYAT") onSkip();
}, [formData]);

return (
<React.Fragment>
<Timeline currentStep={1} flow="APPLY" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -66,11 +66,6 @@ const SelectSlumName = ({ config, onSelect, t, userType, formData }) => {
}
}, [slumDataLoading, formData?.address?.locality?.code]);

useEffect(() => {
if (formData?.address?.propertyLocation?.code === "FROM_GRAM_PANCHAYAT")
onSkip();
}, [formData?.address?.propertyLocation?.code]);

function selectSlum(value) {
setSlum(value);
onSelect(config.key, { ...formData[config.key], slum: value.code });
Expand All @@ -89,10 +84,10 @@ const SelectSlumName = ({ config, onSelect, t, userType, formData }) => {

return userType === "employee" ? (
formData?.address?.propertyLocation !== "FROM_GRAM_PANCHAYAT" && (
<LabelFieldPair>
<CardLabel className="card-label-smaller">{t("ES_NEW_APPLICATION_SLUM_NAME")}</CardLabel>
<Dropdown t={t} option={slumMenu} className="form-field" optionKey="i18nKey" id="slum" selected={slum} select={selectSlum} />
</LabelFieldPair>
<LabelFieldPair>
<CardLabel className="card-label-smaller">{t("ES_NEW_APPLICATION_SLUM_NAME")}</CardLabel>
<Dropdown t={t} option={slumMenu} className="form-field" optionKey="i18nKey" id="slum" selected={slum} select={selectSlum} />
</LabelFieldPair>
)
) : (
<React.Fragment>
Expand Down
Loading

0 comments on commit 2952580

Please sign in to comment.