Junior — Middle
Pode dar um exemplo em que as operações CRUD padrão se combinem com lógica de negócio adicional do utilizador?
sobes.tech IA
Resposta da IA
Exemplo de combinação de operações CRUD padrão com lógica de negócio adicional em C#:
public class OrderService
{
private readonly IOrderRepository _repository;
public OrderService(IOrderRepository repository)
{
_repository = repository;
}
public void CreateOrder(Order order)
{
// Lógica de negócio: verificar disponibilidade do produto
if (!IsProductAvailable(order.ProductId, order.Quantity))
throw new InvalidOperationException("Produto não disponível na quantidade necessária");
// Operação padrão de criação
_repository.Add(order);
// Lógica adicional: notificação ao usuário
NotifyUser(order.UserId, "Seu pedido foi criado");
}
// Outros métodos CRUD com lógica de negócio
}
Aqui, criar um pedido é uma operação CRUD, mas antes de salvar, verifica-se as regras de negócio, e após, envia-se uma notificação.