adding a random reference number in user table

This commit is contained in:
2025-11-29 13:48:55 +05:30
parent 6b2b211990
commit 7bec950096
3 changed files with 44 additions and 1 deletions

View File

@@ -86,6 +86,28 @@ export class MinglarService {
return true;
}
async generateHostRefNumber(tx: any, role_xid: number) {
const lastrecord = await tx.user.findFirst({
orderBy: {
id: 'desc',
},
select: {
id: true,
},
});
let referenceId = '';
const nextId = lastrecord ? lastrecord.id + 1 : 1;
if (role_xid === ROLE.ACCOUNT_MANAGER) {
referenceId = `AM-${String(nextId).padStart(6, '0')}`;
} else if (role_xid === ROLE.CO_ADMIN) {
referenceId = `CA-${String(nextId).padStart(6, '0')}`;
}
return referenceId;
}
async createHost(data: CreateMinglarDto) {
return this.prisma.user.create({ data });
}
@@ -337,12 +359,15 @@ export class MinglarService {
throw new ApiError(400, 'User already exists.');
}
const referenceNumber = await this.generateHostRefNumber(tx, roleXid);
// Create user with INVITED status
const user = await tx.user.create({
data: {
emailAddress: emailAddress,
roleXid: roleXid,
userStatus: USER_STATUS.INVITED,
userRefNumber: referenceNumber
},
});