Fix issue with variant editing

This commit is contained in:
Srinath 2026-03-23 10:53:39 +05:30
parent 46ff0f8d27
commit cf77675d5a
1 changed files with 31 additions and 23 deletions

View File

@ -629,6 +629,10 @@ const ProductForm = ({ formType }) => {
}, [editstate?.Rack, RackData]);
useEffect(() => {
// Auto-fill "Variant X" only when we are adding a new variant.
// When editing, another effect will populate the full data.
if (!openVariant || variantEdit) return;
let variantAddData11 = [...variantPriceData];
if (variantAddData11?.length > 0) {
const lastAddProdVariantName11 =
@ -677,7 +681,32 @@ const ProductForm = ({ formType }) => {
ProdVariantName: `Variant ${parseInt(variantAddData11?.length) + parseInt(2)}`,
});
}
}, [openVariant]);
}, [openVariant, variantEdit, variantPriceData]);
useEffect(() => {
// Populate edit values only after the variant form is mounted.
if (!openVariant || !variantEdit) return;
if (
variantEditIndex === undefined ||
variantEditIndex === null ||
!variantPriceData?.length
) {
return;
}
const row = variantPriceData?.[variantEditIndex];
if (!row) return;
formVariantRef?.current?.setFieldsValue({
ProdVariantName: row?.ProdVariantName,
AmountOfPiece: row?.OnePcsPrice,
MRP: row?.MRP,
SellPrice: row?.SellPrice,
WhSalePrice: row?.WhSalePrice,
OfferPrice: row?.OfferPrice,
SpecialPrice: row?.SpecialPrice,
});
}, [openVariant, variantEdit, variantEditIndex, variantPriceData]);
const onComplete = useCallback(() => {
setMessageData(null);
@ -1573,28 +1602,7 @@ const ProductForm = ({ formType }) => {
};
const variantActionsFormatter = (row, index) => {
if (StockOpen == 'Y') {
formVariantRef?.current?.setFieldsValue({
ProdVariantName: row?.ProdVariantName,
AmountOfPiece: row?.OnePcsPrice,
MRP: row?.MRP,
SellPrice: row?.SellPrice,
WhSalePrice: row?.WhSalePrice,
OfferPrice: row?.OfferPrice,
SpecialPrice: row?.SpecialPrice,
});
} else {
formVariantRef?.current?.setFieldsValue({
ProdVariantName: row?.ProdVariantName,
AmountOfPiece: row?.OnePcsPrice,
MRP: row?.MRP,
SellPrice: row?.SellPrice,
WhSalePrice: row?.WhSalePrice,
OfferPrice: row?.OfferPrice,
SpecialPrice: row?.SpecialPrice,
});
}
setOpenVariant(true);
setVariantEdit(true);
setVariantEditIndex(index);
};