import { Injectable } from '@nestjs/common'; import { DataSource, Repository } from 'typeorm'; import { Expense } from './entities/expense.entity'; import { UpdateExpenseDto } from './dto/update-expense.dto'; import { CreateExpenseDto } from './dto/create-expense.dto'; @Injectable() export class ExpenseDataService { private expenses: Repository; public constructor(private dataSource: DataSource) { this.expenses = this.dataSource.getRepository(Expense); } public async getAll(): Promise { return await this.expenses.find(); } public async getById(id: string): Promise { return await this.expenses.findOneBy({ id }); } public async create(expense: CreateExpenseDto): Promise { return await this.expenses.save(expense); } public async update(expense: UpdateExpenseDto): Promise { return await this.expenses.save(expense); } public async delete(id: string): Promise { await this.expenses.delete({ id }); } }