fix "Delete fee" on Member Incidents Report screen
This commit is contained in:
@@ -65,7 +65,7 @@ class SingleIncidentsTable extends Component {
|
|||||||
};
|
};
|
||||||
|
|
||||||
deleteSelectedFees = () => {
|
deleteSelectedFees = () => {
|
||||||
const { dateRange, deleteIncidentsById } = this.props;
|
const { dateRange, deleteIncidentsById, memberId } = this.props;
|
||||||
const { selectedUnlockedIncidentIds, selectedUnscheduledIncidentIds, selectedBookingChangeIncidentIds } = this.state;
|
const { selectedUnlockedIncidentIds, selectedUnscheduledIncidentIds, selectedBookingChangeIncidentIds } = this.state;
|
||||||
|
|
||||||
const incidentsToDelete = {
|
const incidentsToDelete = {
|
||||||
@@ -74,7 +74,7 @@ class SingleIncidentsTable extends Component {
|
|||||||
bookingChangeIncidentIds: selectedBookingChangeIncidentIds
|
bookingChangeIncidentIds: selectedBookingChangeIncidentIds
|
||||||
};
|
};
|
||||||
|
|
||||||
deleteIncidentsById(dateRange, incidentsToDelete);
|
deleteIncidentsById(dateRange, incidentsToDelete, memberId);
|
||||||
this.setState({
|
this.setState({
|
||||||
selectedUnlockedIncidentIds: [],
|
selectedUnlockedIncidentIds: [],
|
||||||
selectedUnscheduledIncidentIds: [],
|
selectedUnscheduledIncidentIds: [],
|
||||||
@@ -252,7 +252,7 @@ class SingleIncidentsTable extends Component {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const mapDispatchToProps = (dispatch) => ({
|
const mapDispatchToProps = (dispatch) => ({
|
||||||
deleteIncidentsById: (dateRange, incidentsToDelete) => deleteIncidents(dispatch, {dateRange, incidentsToDelete})
|
deleteIncidentsById: (dateRange, incidentsToDelete, memberId) => deleteIncidents(dispatch, {dateRange, incidentsToDelete, memberId})
|
||||||
});
|
});
|
||||||
|
|
||||||
export default connect(null, mapDispatchToProps)(SingleIncidentsTable);
|
export default connect(null, mapDispatchToProps)(SingleIncidentsTable);
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ import {
|
|||||||
} from '../../constants/enums';
|
} from '../../constants/enums';
|
||||||
|
|
||||||
export default function MemberIncidentsTables (props) {
|
export default function MemberIncidentsTables (props) {
|
||||||
const { pendingIncidents, incidents, hideMemberName, dateRange } = props;
|
const { pendingIncidents, incidents, hideMemberName, dateRange, memberId } = props;
|
||||||
|
|
||||||
const incidentsRelatedToReservations = [];
|
const incidentsRelatedToReservations = [];
|
||||||
const standaloneIncidents = [];
|
const standaloneIncidents = [];
|
||||||
@@ -47,6 +47,7 @@ export default function MemberIncidentsTables (props) {
|
|||||||
hideMemberName={hideMemberName}
|
hideMemberName={hideMemberName}
|
||||||
tableType={incidentTableTypes.INCIDENTS_RELATED_TO_RESERVATIONS}
|
tableType={incidentTableTypes.INCIDENTS_RELATED_TO_RESERVATIONS}
|
||||||
dateRange={dateRange}
|
dateRange={dateRange}
|
||||||
|
memberId={memberId}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -58,6 +59,7 @@ export default function MemberIncidentsTables (props) {
|
|||||||
hideMemberName={hideMemberName}
|
hideMemberName={hideMemberName}
|
||||||
tableType={incidentTableTypes.STANDALONE_INCIDENTS}
|
tableType={incidentTableTypes.STANDALONE_INCIDENTS}
|
||||||
dateRange={dateRange}
|
dateRange={dateRange}
|
||||||
|
memberId={memberId}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -69,6 +71,7 @@ export default function MemberIncidentsTables (props) {
|
|||||||
hideMemberName={hideMemberName}
|
hideMemberName={hideMemberName}
|
||||||
tableType={incidentTableTypes.BOOKING_CHANGE_INCIDENTS}
|
tableType={incidentTableTypes.BOOKING_CHANGE_INCIDENTS}
|
||||||
dateRange={dateRange}
|
dateRange={dateRange}
|
||||||
|
memberId={memberId}
|
||||||
/>
|
/>
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
@@ -83,7 +83,13 @@ class SpecificMemberIncidentsReport extends Component {
|
|||||||
<Grid.Row/>
|
<Grid.Row/>
|
||||||
<Grid.Row>
|
<Grid.Row>
|
||||||
<Grid.Column>
|
<Grid.Column>
|
||||||
<MemberIncidentsTables incidents={memberIncidents} pendingIncidents={loading} hideMemberName/>
|
<MemberIncidentsTables
|
||||||
|
incidents={memberIncidents}
|
||||||
|
pendingIncidents={loading}
|
||||||
|
hideMemberName
|
||||||
|
dateRange={dateRange}
|
||||||
|
memberId={memberId}
|
||||||
|
/>
|
||||||
</Grid.Column>
|
</Grid.Column>
|
||||||
</Grid.Row>
|
</Grid.Row>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
|||||||
@@ -89,13 +89,17 @@ export const fetchIncidents = (dispatch, dateRange) => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export const deleteIncidents = (dispatch, deleteData) => {
|
export const deleteIncidents = (dispatch, deleteData) => {
|
||||||
dispatch({type: FETCH_INCIDENTS_PENDING});
|
const pendingAction = deleteData.memberId ? FETCH_MEMBER_INCIDENTS_PENDING : FETCH_INCIDENTS_PENDING;
|
||||||
|
const successAction = deleteData.memberId ? FETCH_MEMBER_INCIDENTS_SUCCESS : FETCH_INCIDENTS_SUCCESS;
|
||||||
|
const failedAction = deleteData.memberId ? FETCH_MEMBER_INCIDENTS_FAILED : FETCH_INCIDENTS_FAILED;
|
||||||
|
|
||||||
|
dispatch({type: pendingAction});
|
||||||
API.delete(`/integration/fees`, { data: deleteData })
|
API.delete(`/integration/fees`, { data: deleteData })
|
||||||
.then(response => {
|
.then(response => {
|
||||||
dispatch({type: FETCH_INCIDENTS_SUCCESS, payload: response.data});
|
dispatch({type: successAction, payload: response.data});
|
||||||
})
|
})
|
||||||
.catch(error => {
|
.catch(error => {
|
||||||
dispatch({type: FETCH_INCIDENTS_FAILED, payload: error.response});
|
dispatch({type: failedAction, payload: error.response});
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -181,6 +181,7 @@ const deleteFees= (req, res) => {
|
|||||||
const deleteData = req.body;
|
const deleteData = req.body;
|
||||||
const dateRange = deleteData.dateRange ? deleteData.dateRange : null;
|
const dateRange = deleteData.dateRange ? deleteData.dateRange : null;
|
||||||
const incidents = deleteData.incidentsToDelete ? deleteData.incidentsToDelete : null;
|
const incidents = deleteData.incidentsToDelete ? deleteData.incidentsToDelete : null;
|
||||||
|
const memberId = deleteData.memberId ? deleteData.memberId : null;
|
||||||
|
|
||||||
const unlockedIncidentIds = incidents.unlockedIncidentIds ? incidents.unlockedIncidentIds : [];
|
const unlockedIncidentIds = incidents.unlockedIncidentIds ? incidents.unlockedIncidentIds : [];
|
||||||
const unscheduledIncidentIds = incidents.unscheduledIncidentIds ? incidents.unscheduledIncidentIds : [];
|
const unscheduledIncidentIds = incidents.unscheduledIncidentIds ? incidents.unscheduledIncidentIds : [];
|
||||||
@@ -198,14 +199,24 @@ const deleteFees= (req, res) => {
|
|||||||
|
|
||||||
Promise.all(asyncDeleteActions)
|
Promise.all(asyncDeleteActions)
|
||||||
.then(() => {
|
.then(() => {
|
||||||
getAllIncidentsController(req, res);
|
if (memberId){
|
||||||
|
req.params.memberId = memberId;
|
||||||
|
getMemberIncidents(req, res);
|
||||||
|
}else{
|
||||||
|
getAllIncidentsController(req, res);
|
||||||
|
}
|
||||||
})
|
})
|
||||||
.catch((error) => {
|
.catch((error) => {
|
||||||
console.log('Error deleting incidents : ', error);
|
console.log('Error deleting incidents : ', error);
|
||||||
res.status(500).send();
|
res.status(500).send();
|
||||||
});
|
});
|
||||||
}else{
|
}else{
|
||||||
getAllIncidentsController(req, res);
|
if (memberId){
|
||||||
|
req.params.memberId = memberId;
|
||||||
|
getMemberIncidents(req, res);
|
||||||
|
}else{
|
||||||
|
getAllIncidentsController(req, res);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user