Add quick deactivate member functionality and update routes and UI
Implemented a new quickDeactivateMember function in MemberService to handle member deactivation. Updated member routes to include a new endpoint for quick deactivation. Enhanced the MembersView component to support quick deactivation actions with updated UI elements, improving user experience for managing member statuses.
This commit is contained in:
@@ -544,6 +544,31 @@ class MemberService {
|
||||
return { status: 500, response: { error: 'Failed to update member form status' } };
|
||||
}
|
||||
}
|
||||
|
||||
async quickDeactivateMember(userToken, clubId, memberId) {
|
||||
try {
|
||||
await checkAccess(userToken, clubId);
|
||||
const member = await Member.findOne({ where: { id: memberId, clubId: clubId } });
|
||||
if (!member) {
|
||||
return { status: 404, response: { error: 'Member not found in this club' } };
|
||||
}
|
||||
|
||||
if (!member.active) {
|
||||
return { status: 400, response: { error: 'Member is already inactive' } };
|
||||
}
|
||||
|
||||
member.active = false;
|
||||
await member.save();
|
||||
|
||||
return {
|
||||
status: 200,
|
||||
response: { success: true, message: 'Mitglied deaktiviert' }
|
||||
};
|
||||
} catch (error) {
|
||||
console.error('[quickDeactivateMember] - Error:', error);
|
||||
return { status: 500, response: { error: 'Failed to deactivate member' } };
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export default new MemberService();
|
||||
Reference in New Issue
Block a user