Преглед изворни кода

Change grant category to user DTOs

BE_dev
bronjaermin пре 2 година
родитељ
комит
458e9b6b77

+ 19
- 3
Diligent.WebAPI.Business/Services/UserService.cs Прегледај датотеку

@@ -9,8 +9,9 @@
private readonly DatabaseContext _databaseContext;
private readonly IEmailer _emailer;
private readonly ILogger<UserService> _logger;
private readonly ICategoryService _categoryService;

public UserService(IOptions<FrontEndSettings> frontEndSettings, UserManager<User> userManager, IMapper mapper, DatabaseContext databaseContext, IEmailer emailer, ILogger<UserService> logger)
public UserService(IOptions<FrontEndSettings> frontEndSettings, UserManager<User> userManager, IMapper mapper, DatabaseContext databaseContext, IEmailer emailer, ILogger<UserService> logger, ICategoryService categoryService)
{
_frontEndSettings = frontEndSettings.Value;
_userManager = userManager;
@@ -18,6 +19,7 @@
_databaseContext = databaseContext;
_emailer = emailer;
_logger = logger;
_categoryService = categoryService;
}

public async Task<IEnumerable<User?>> GetAll()
@@ -130,9 +132,23 @@

public async Task GrantCategoryToUserAsync(GrantUserCategoryRequestDto request)
{
for (int i = 0; i < request.CategoriesId.Count; i++)
//for (int i = 0; i < request.CategoriesId.Count; i++)
//{
// await _databaseContext.UserCategories.AddAsync(new UserCategories { UserId = request.UserId, CategoryId = request.CategoriesId[i] });
//}

//await _databaseContext.SaveChangesAsync();
for (int i = 0; i < request.Categories.Count; i++)
{
await _databaseContext.UserCategories.AddAsync(new UserCategories { UserId = request.UserId, CategoryId = request.CategoriesId[i] });
if (request.Categories[i].IsChecked == false)
{
var category = await _databaseContext.UserCategories.Where(x => x.UserId == request.UserId && x.CategoryId == request.Categories[i].Id).FirstOrDefaultAsync();
_databaseContext.UserCategories.Remove(category);
}
else
{
await _databaseContext.UserCategories.AddAsync(new UserCategories { UserId = request.UserId, CategoryId = request.Categories[i].Id });
}
}

await _databaseContext.SaveChangesAsync();

+ 15
- 0
Diligent.WebAPI.Contracts/DTOs/Categories/GrantCategoryToUserRequestDto.cs Прегледај датотеку

@@ -0,0 +1,15 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Diligent.WebAPI.Contracts.DTOs.Categories
{
public class GrantCategoryToUserRequestDto
{
public int Id { get; set; }

public bool IsChecked { get; set; }
}
}

+ 3
- 2
Diligent.WebAPI.Contracts/DTOs/User/GrantUserCategoryRequestDto.cs Прегледај датотеку

@@ -1,4 +1,5 @@
using System;
using Diligent.WebAPI.Contracts.DTOs.Categories;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
@@ -10,6 +11,6 @@ namespace Diligent.WebAPI.Contracts.DTOs.User
{
public int UserId { get; set; }

public List<int>CategoriesId { get; set; }
public List<GrantCategoryToUserRequestDto> Categories { get; set; }
}
}

Loading…
Откажи
Сачувај