diff --git a/src/actions/bmdashboard/equipmentActions.js b/src/actions/bmdashboard/equipmentActions.js
index 4de9f486c7..b8daa54a9c 100644
--- a/src/actions/bmdashboard/equipmentActions.js
+++ b/src/actions/bmdashboard/equipmentActions.js
@@ -98,7 +98,7 @@ export const updateMultipleEquipmentLogs = (projectId, bulkArr) => dispatch => {
});
}
-export const updateEquipment = (equipmentId, updateData) => async (dispatch, getState) => {
+export const updateEquipment = (equipmentId, updateData, imageFile = null) => async (dispatch, getState) => {
const url = `${ENDPOINTS.BM_EQUIPMENT_STATUS_UPDATE(equipmentId)}`;
try {
@@ -127,15 +127,30 @@ export const updateEquipment = (equipmentId, updateData) => async (dispatch, get
const statusUpdateData = {
condition: updateData.condition,
- lastUsedBy: updateData.lastUsedBy,
- lastUsedFor: updateData.lastUsedFor,
- replacementRequired: updateData.replacementRequired,
+ lastUsedBy: updateData.lastUsedBy || '',
+ lastUsedFor: updateData.lastUsedFor || '',
+ replacementRequired: updateData.replacementRequired || '',
description: updateData.description || '',
notes: updateData.notes || '',
createdBy: currentUserId,
};
- const res = await axios.put(url, statusUpdateData);
+ let res;
+ if (imageFile) {
+ const formData = new FormData();
+ formData.append('condition', statusUpdateData.condition);
+ formData.append('createdBy', statusUpdateData.createdBy);
+ formData.append('lastUsedBy', statusUpdateData.lastUsedBy);
+ formData.append('lastUsedFor', statusUpdateData.lastUsedFor);
+ formData.append('replacementRequired', statusUpdateData.replacementRequired);
+ formData.append('description', statusUpdateData.description);
+ formData.append('notes', statusUpdateData.notes);
+ formData.append('image', imageFile);
+ // Do NOT set Content-Type — axios sets multipart/form-data with the correct boundary
+ res = await axios.put(url, formData);
+ } else {
+ res = await axios.put(url, statusUpdateData);
+ }
dispatch(setEquipment(res.data));
toast.success('Equipment status updated successfully!');
@@ -143,7 +158,6 @@ export const updateEquipment = (equipmentId, updateData) => async (dispatch, get
return res.data;
} catch (err) {
-
let errorMessage = 'Failed to update equipment status.';
if (err.response) {
diff --git a/src/components/BMDashboard/Equipment/List/EquipmentsTable.jsx b/src/components/BMDashboard/Equipment/List/EquipmentsTable.jsx
index c814629ef6..10e0eaefed 100644
--- a/src/components/BMDashboard/Equipment/List/EquipmentsTable.jsx
+++ b/src/components/BMDashboard/Equipment/List/EquipmentsTable.jsx
@@ -220,13 +220,13 @@ function EquipmentsTable({ equipment, project }) {
{new Date(rec.rentalDueDate).toLocaleDateString()} |
-
+
|