From 2cc8abd7677e544510f0a1f9e240fbe9b8e14ea7 Mon Sep 17 00:00:00 2001
From: eugeniy_ivanov <ea.ivanov@digitaldrilling.ru>
Date: Tue, 14 Feb 2023 12:20:29 +0500
Subject: [PATCH] =?UTF-8?q?=D1=80=D0=B5=D1=84=D0=B0=D0=BA=D1=82?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 AsbCloudDb/Model/IAsbCloudDbContext.cs        |  5 +--
 .../Repository/UserRepository.cs              | 38 ++++++++-----------
 2 files changed, 17 insertions(+), 26 deletions(-)

diff --git a/AsbCloudDb/Model/IAsbCloudDbContext.cs b/AsbCloudDb/Model/IAsbCloudDbContext.cs
index 60fa41d0..446a7656 100644
--- a/AsbCloudDb/Model/IAsbCloudDbContext.cs
+++ b/AsbCloudDb/Model/IAsbCloudDbContext.cs
@@ -1,10 +1,8 @@
 using AsbCloudDb.Model.Subsystems;
 using AsbCloudDb.Model.WITS;
 using Microsoft.EntityFrameworkCore;
-using Microsoft.EntityFrameworkCore.ChangeTracking;
 using Microsoft.EntityFrameworkCore.Infrastructure;
 using System;
-using System.Diagnostics.CodeAnalysis;
 using System.Threading;
 using System.Threading.Tasks;
 
@@ -69,8 +67,7 @@ namespace AsbCloudDb.Model
         Task<int> RefreshMaterializedViewAsync<TEntity>(CancellationToken token) where TEntity : class;
         int SaveChanges();
         int SaveChanges(bool acceptAllChangesOnSuccess);
-        Task<int> SaveChangesAsync(CancellationToken cancellationToken);
-        DbSet<TEntity> Set<TEntity>(string name) where TEntity : class;
+        Task<int> SaveChangesAsync(CancellationToken cancellationToken);        
         DbSet<TEntity> Set<TEntity>() where TEntity : class;        
     }
 }
\ No newline at end of file
diff --git a/AsbCloudInfrastructure/Repository/UserRepository.cs b/AsbCloudInfrastructure/Repository/UserRepository.cs
index 7873a4e9..e1ca6c19 100644
--- a/AsbCloudInfrastructure/Repository/UserRepository.cs
+++ b/AsbCloudInfrastructure/Repository/UserRepository.cs
@@ -67,8 +67,7 @@ namespace AsbCloudInfrastructure.Repository
             foreach(var dto in dtos)
             {
                 dto.RoleNames = GetRolesNamesByIdUser(dto.Id);
-            };
-            
+            };            
             return dtos;
         }
         
@@ -110,18 +109,16 @@ namespace AsbCloudInfrastructure.Repository
 
             var entity = dbContext.Users.FirstOrDefault(u => u.Id == dto.Id);
             if (entity is not null)
-            {
-                var user = Convert(dto);
-                entity.Id = user.Id;
-                entity.Company = user.Company;
-                entity.Name = user.Name;
-                entity.Email = user.Email;  
-                entity.Phone = user.Phone;                
-                entity.Surname = user.Surname;
-                entity.Patronymic = user.Patronymic;
-                entity.Position = user.Position;
-                entity.IdCompany = user.IdCompany;
-                entity.IdState = user.IdState;                
+            {                
+                entity.Id = dto.Id;                
+                entity.Name = dto.Name;
+                entity.Email = dto.Email;  
+                entity.Phone = dto.Phone;                
+                entity.Surname = dto.Surname;
+                entity.Patronymic = dto.Patronymic;
+                entity.Position = dto.Position;
+                entity.IdCompany = dto.IdCompany;
+                entity.IdState = dto.IdState;                
                 await dbContext.SaveChangesAsync(token);
             }
             DropCacheUsers();
@@ -209,7 +206,11 @@ namespace AsbCloudInfrastructure.Repository
         {
             var relations = dbContext.RelationUserUserRoles.Where(r => r.IdUser == idUser);
             dbContext.RelationUserUserRoles.RemoveRange(relations);
-            var entityRoles = roleDtos.Select(role => Convert(role));
+            var entityRoles = roleDtos.Select(role => new RelationUserUserRole
+            {
+                IdUser = idUser,
+                IdUserRole = role.Id
+            });
             dbContext.RelationUserUserRoles.AddRange(entityRoles);
             await dbContext.SaveChangesAsync(token);
             DropCacheRelationUserUserRoleCacheTag();
@@ -255,13 +256,6 @@ namespace AsbCloudInfrastructure.Repository
                 entity.PasswordHash = dbContext.Users.FirstOrDefault(u => u.Id == dto.Id)?.PasswordHash;
             return entity;
         }
-
-        protected RelationUserUserRole Convert(UserRoleDto dto)
-        {
-            var entity = dto.Adapt<RelationUserUserRole>();            
-            return entity;
-        }
-
         protected virtual UserExtendedDto Convert(User entity)
         {
             var dto = entity.Adapt<UserExtendedDto>();