Add lock files for package management and update architecture documentation

- Introduced bun.lock and package-lock.json to manage dependencies for the project.
- Enhanced backend API architecture documentation with additional security and documentation guidelines.
- Made minor formatting adjustments across various files for consistency and clarity.
This commit is contained in:
2025-12-11 02:11:43 -05:00
parent 4911b5d125
commit 40210c454e
74 changed files with 2599 additions and 1386 deletions

View File

@@ -10,39 +10,39 @@ const prisma = DatabaseConnection.getInstance();
export class LiabilityRepository {
async findById(id: string): Promise<Liability | null> {
return prisma.liability.findUnique({
where: {id},
where: {id}
});
}
async findByIdAndUser(id: string, userId: string): Promise<Liability | null> {
return prisma.liability.findFirst({
where: {id, userId},
where: {id, userId}
});
}
async findAllByUser(userId: string): Promise<Liability[]> {
return prisma.liability.findMany({
where: {userId},
orderBy: {createdAt: 'desc'},
orderBy: {createdAt: 'desc'}
});
}
async create(data: Prisma.LiabilityCreateInput): Promise<Liability> {
return prisma.liability.create({
data,
data
});
}
async update(id: string, data: Prisma.LiabilityUpdateInput): Promise<Liability> {
return prisma.liability.update({
where: {id},
data,
data
});
}
async delete(id: string): Promise<void> {
await prisma.liability.delete({
where: {id},
where: {id}
});
}
@@ -53,8 +53,8 @@ export class LiabilityRepository {
const result = await prisma.liability.aggregate({
where: {userId},
_sum: {
balance: true,
},
balance: true
}
});
return result._sum.balance || 0;
@@ -66,13 +66,16 @@ export class LiabilityRepository {
async getByType(userId: string): Promise<Record<string, Liability[]>> {
const liabilities = await this.findAllByUser(userId);
return liabilities.reduce((acc, liability) => {
const type = liability.type;
if (!acc[type]) {
acc[type] = [];
}
acc[type].push(liability);
return acc;
}, {} as Record<string, Liability[]>);
return liabilities.reduce(
(acc, liability) => {
const type = liability.type;
if (!acc[type]) {
acc[type] = [];
}
acc[type].push(liability);
return acc;
},
{} as Record<string, Liability[]>
);
}
}