-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathGeneroBLL.cs
74 lines (65 loc) · 2.2 KB
/
GeneroBLL.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
using DataAccessLayer;
using Entities;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
namespace BusinessLogicalLayer
{
/// <summary>
/// Classe responsável pelas regras de negócio
/// da entidade Gênero.
/// </summary>
public class GeneroBLL : IEntityCRUD<Genero>
{
private GeneroDAL dal = new GeneroDAL();
public Response Insert(Genero item)
{
Response response = new Response();
if (string.IsNullOrWhiteSpace(item.Nome))
{
response.Erros.Add("O nome do gênero deve ser informado.");
}
else
{
//Remove espaços em branco no começo e no final da string.
item.Nome = item.Nome.Trim();
//Remove espaços extras entre as palavras, ex: "A B", ficaria "A B".
item.Nome = Regex.Replace(item.Nome, @"\s+", " ");
if (item.Nome.Length < 2 || item.Nome.Length > 50)
{
response.Erros.Add("O nome do gênero deve conter entre 2 e 50 caracteres");
}
}
//TODO: Implementar posteriormente regra de prevenção de gêneros repetidos no banco de dados
//Se encontramos erros de validação, retorne-os!
if (response.Erros.Count > 0)
{
response.Sucesso = false;
return response;
}
//Se chegou aqui, bora pro DAL!
//Retorna a resposta do DAL! Se tiver dúvidas do que é esta resposta,
//analise o método do DAL!
return dal.Insert(item);
}
public Response Update(Genero item)
{
throw new NotImplementedException();
}
public Response Delete(int id)
{
throw new NotImplementedException();
}
public DataResponse<Genero> GetData()
{
return dal.GetData();
}
public DataResponse<Genero> GetByID(int id)
{
throw new NotImplementedException();
}
}
}