/// <summary>
        /// Orquesta todos los trabajos necesarios para añadir un usuario en base de datos.
        /// </summary>
        /// <param name="userDto">Objeto usuario que se va a añadir</param>
        /// <returns></returns>
        public async Task AddUser(UserDto userDto)
        {
            var userAll = _userRepository.GetAll();

            _userLogic.LogicToAdd(userAll, userDto);
            var user = MapperUser.MapFromDtoToEntity(userDto);

            _userRepository.Add(user);
            await _uow.CommitAsync();
        }
        /// <summary>
        /// Orquesta todos los trabajos necesarios para actualizar un usuario en base de datos.
        /// </summary>
        /// <param name="userDto">Datos usuario a actualizar</param>
        /// <returns></returns>
        public async Task UpdateUser(UserDto userDto)
        {
            var userAll = _userRepository.GetAllWithTracking();

            _userLogic.LogicToUpdate(userAll, userDto);
            var user = MapperUser.MapFromDtoToEntity(userDto);

            _userRepository.Update(user);
            await _uow.CommitAsync();
        }