Skip to content

Commit 685192d

Browse files
Merge pull request #30 from Romulo-Queiroz/Refactor
Aprovando:
2 parents cef3f12 + 4c0c794 commit 685192d

6 files changed

Lines changed: 255 additions & 22 deletions

Migrations/20240216180019_NovaEstruturaEntitys.Designer.cs

Lines changed: 150 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
using System;
2+
using Microsoft.EntityFrameworkCore.Migrations;
3+
4+
#nullable disable
5+
6+
namespace Todo.Migrations
7+
{
8+
/// <inheritdoc />
9+
public partial class NovaEstruturaEntitys : Migration
10+
{
11+
/// <inheritdoc />
12+
protected override void Up(MigrationBuilder migrationBuilder)
13+
{
14+
migrationBuilder.RenameColumn(
15+
name: "isLogged",
16+
table: "Users",
17+
newName: "IsLogged");
18+
19+
migrationBuilder.RenameColumn(
20+
name: "LoginTime",
21+
table: "Users",
22+
newName: "CreatedAt");
23+
24+
migrationBuilder.AddColumn<byte[]>(
25+
name: "ProfilePicture",
26+
table: "Users",
27+
type: "varbinary(max)",
28+
nullable: true,
29+
defaultValue: new byte[0]);
30+
31+
migrationBuilder.AddColumn<DateTime>(
32+
name: "FinishedAt",
33+
table: "Tasks",
34+
type: "datetime2",
35+
nullable: true,
36+
defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified));
37+
}
38+
39+
/// <inheritdoc />
40+
protected override void Down(MigrationBuilder migrationBuilder)
41+
{
42+
migrationBuilder.DropColumn(
43+
name: "ProfilePicture",
44+
table: "Users");
45+
46+
migrationBuilder.DropColumn(
47+
name: "FinishedAt",
48+
table: "Tasks");
49+
50+
migrationBuilder.RenameColumn(
51+
name: "IsLogged",
52+
table: "Users",
53+
newName: "isLogged");
54+
55+
migrationBuilder.RenameColumn(
56+
name: "CreatedAt",
57+
table: "Users",
58+
newName: "LoginTime");
59+
}
60+
}
61+
}

Migrations/AppDbContextModelSnapshot.cs

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,9 @@ protected override void BuildModel(ModelBuilder modelBuilder)
6161
b.Property<bool>("Done")
6262
.HasColumnType("bit");
6363

64+
b.Property<DateTime>("FinishedAt")
65+
.HasColumnType("datetime2");
66+
6467
b.Property<string>("Title")
6568
.HasColumnType("nvarchar(max)");
6669

@@ -84,23 +87,27 @@ protected override void BuildModel(ModelBuilder modelBuilder)
8487

8588
SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property<int>("Id"));
8689

90+
b.Property<DateTime>("CreatedAt")
91+
.HasColumnType("datetime2");
92+
8793
b.Property<bool>("IsAdmin")
8894
.HasColumnType("bit");
8995

90-
b.Property<DateTime>("LoginTime")
91-
.HasColumnType("datetime2");
96+
b.Property<bool>("IsLogged")
97+
.HasColumnType("bit");
9298

9399
b.Property<string>("Password")
94100
.IsRequired()
95101
.HasColumnType("nvarchar(max)");
96102

103+
b.Property<byte[]>("ProfilePicture")
104+
.IsRequired()
105+
.HasColumnType("varbinary(max)");
106+
97107
b.Property<string>("Username")
98108
.IsRequired()
99109
.HasColumnType("nvarchar(max)");
100110

101-
b.Property<bool>("isLogged")
102-
.HasColumnType("bit");
103-
104111
b.HasKey("Id");
105112

106113
b.ToTable("Users");

Models/TaskEntity.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ public class TaskEntity
1010
public string? Description {get; set;}
1111
public bool Done { get; set; }
1212
public DateTime CreatedAt { get; set; }
13+
public DateTime FinishedAt { get; set; }
1314
public int CategorieTaskId { get; set; }
1415

1516
[ForeignKey("CategorieTaskId")]

Models/UserEntity.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,9 @@ public class UserEntity
88
public string Username { get; set; }
99
public string Password { get; set; }
1010
public bool IsAdmin { get; set; }
11-
public bool isLogged { get; set; }
12-
public DateTime LoginTime { get; set; } = DateTime.Now;
11+
public bool IsLogged { get; set; }
12+
public byte[] ProfilePicture { get; set; }
13+
public DateTime CreatedAt { get; set; } = DateTime.Now;
1314
public virtual ICollection<TaskEntity> Tasks { get; set; } = new List<TaskEntity>();
1415

1516
}

Services/TaskManagerServices.cs

Lines changed: 28 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -111,25 +111,38 @@ public IActionResult GetById(int id)
111111

112112
public IActionResult InsertTask (TaskEntity model, int userId)
113113
{
114-
var category = context.CategorieTasks.FirstOrDefault(c => c.Id == model.CategorieTaskId);
114+
try
115+
{
116+
var category = context.CategorieTasks.FirstOrDefault(c => c.Id == model.CategorieTaskId);
115117

116-
if(category == null || model == null) return new BadRequestResult();
118+
if (category == null || model == null)
119+
{
120+
return BadRequest("Categoria ou modelo inválido.");
121+
}
117122

118-
TaskEntity updateTask = new ()
123+
TaskEntity updateTask = new TaskEntity
124+
{
125+
Title = model.Title,
126+
Description = model.Description,
127+
Done = false,
128+
CreatedAt = DateTime.Now,
129+
CategorieTaskId = model.CategorieTaskId,
130+
Category = category,
131+
UserId = userId
132+
};
133+
134+
context.Tasks.Add(updateTask);
135+
context.SaveChanges();
136+
137+
return Ok(new { taskId = updateTask.Id });
138+
}
139+
catch (Exception ex)
119140
{
120-
Title = model.Title,
121-
Description = model.Description,
122-
Done = false,
123-
CreatedAt = DateTime.Now,
124-
CategorieTaskId = model.CategorieTaskId,
125-
Category = context.CategorieTasks.FirstOrDefault(c => c.Id == model.CategorieTaskId),
126-
UserId = userId
127-
};
128-
129-
context.Tasks.Add(updateTask);
130-
context.SaveChanges();
141+
142+
Console.WriteLine($"Erro ao inserir tarefa: {ex}");
131143

132-
return Ok(updateTask);
144+
return StatusCode(500, "Ocorreu um erro ao criar a tarefa.");
145+
}
133146
}
134147

135148
public IActionResult EditTask (TaskEntity model, int id)

0 commit comments

Comments
 (0)