33 lines
881 B
JavaScript
33 lines
881 B
JavaScript
const UnitOfWork = require('../../database/UnitOfWork');
|
|
const PoolMemberRepository = require('../../repositories/pool/poolMemberRepository');
|
|
|
|
async function listMembers(poolId) {
|
|
const uow = new UnitOfWork();
|
|
try {
|
|
await uow.start();
|
|
const repo = new PoolMemberRepository(uow);
|
|
const members = await repo.listMembers(poolId);
|
|
await uow.commit();
|
|
return members;
|
|
} catch (err) {
|
|
try { await uow.rollback(err); } catch (_) {}
|
|
throw err;
|
|
}
|
|
}
|
|
|
|
async function addMembers(poolId, userIds, actorUserId) {
|
|
const uow = new UnitOfWork();
|
|
try {
|
|
await uow.start();
|
|
const repo = new PoolMemberRepository(uow);
|
|
await repo.addMembers(poolId, userIds, actorUserId);
|
|
await uow.commit();
|
|
return true;
|
|
} catch (err) {
|
|
try { await uow.rollback(err); } catch (_) {}
|
|
throw err;
|
|
}
|
|
}
|
|
|
|
module.exports = { listMembers, addMembers };
|