make default_group as utility and added more things

Signed-off-by: Kenneth Obsequio <k80308392@gmail.com>
This commit is contained in:
2026-07-15 21:34:21 +08:00
parent 1745990cda
commit 04baad0cac
7 changed files with 247 additions and 13 deletions
@@ -24,6 +24,7 @@ const { getFieldValues } = require('../../utils/fieldValues.util');
const { excludeAttributes: usersExclude, jsonbSchemas: usersSchemas } = require('../../models/users/users.attributes');
const { excludeAttributes: groupExclude, jsonbSchemas: groupSchemas, computedAttributes: groupComputed } = require('../../models/users/user_groups.attributes');
const logActivity = require('../../utils/logActivity.util');
const { dropDefaultGroupMembership, reconcileDefaultGroup } = require('../../utils/defaultGroup.util');
// ─── Helper — generate a unique group code ────────────────────────────────────
/**
@@ -416,6 +417,8 @@ exports.addUserToGroup = async (req, res) => {
{ ignoreDuplicates: true }
);
await dropDefaultGroupMembership(user_ids, group_id, { updatedBy: req.user.user_id });
logActivity(req.user.user_id, 'add_user_to_group', { entityType: 'group', entityId: Number(group_id), details: { user_ids } });
return R.success(res, 'Users added to group.');
} catch (err) {
@@ -447,6 +450,8 @@ exports.removeUserFromGroup = async (req, res) => {
);
await mdl_UserGroupMembers.destroy({ where: { user_id: user_ids, group_id } });
await reconcileDefaultGroup(user_ids, { createdBy: req.user.user_id });
logActivity(req.user.user_id, 'remove_user_from_group', { entityType: 'group', entityId: Number(group_id), details: { user_ids } });
return R.success(res, 'Users removed from group.');
} catch (err) {