//[Authorize]
    public async Task <ActionResult <Recurso> > Post([FromBody] Recurso obj)
    {
        if (!ModelState.IsValid)
        {
            return(BadRequest(ModelState));
        }

        try
        {
            _cryptographyManager.CryptPbkdf2(obj.Senha, out string senhaCrypt, out string salt);

            obj.Senha = senhaCrypt;
            obj.Salt  = salt;

            obj = await _unitOfWork.RecursoRepository.AddAsync(obj);

            await _unitOfWork.SaveChangesAsync();
        }
        catch (Exception)
        {
            if (await ObjExists(obj.Id))
            {
                return(Conflict());
            }
            else
            {
                throw;
            }
        }

        return(CreatedAtRoute("GetRecurso", new { id = obj.Id }, obj));
    }
Ejemplo n.º 2
0
        public new Guid Incluir(Recurso recurso)
        {
            _cryptographyManager.CryptPbkdf2(recurso.Senha, out string senhaCrypt, out string salt);

            recurso.Senha = senhaCrypt;
            recurso.Salt  = salt;

            return(base.Incluir(recurso));
        }
    public async Task <RecursoViewModel> AddAsync(RecursoViewModel viewModel)
    {
        _cryptographyManager.CryptPbkdf2(viewModel.Senha, out string senhaCrypt, out string salt);

        viewModel.Senha = senhaCrypt;
        viewModel.Salt  = salt;

        RecursoViewModel result = _mapper.Map <RecursoViewModel>(await _unitOfWork.RecursoRepository.AddAsync(_mapper.Map <Recurso>(viewModel)));
        await _unitOfWork.SaveChangesAsync();

        return(result);
    }
Ejemplo n.º 4
0
    public async Task <OperationResult> Handle(CreateRecursoCommand request, CancellationToken cancellationToken)
    {
        _cryptographyManager.CryptPbkdf2(request.Recurso.Senha, out string senhaCrypt, out string salt);

        request.Recurso.Senha = senhaCrypt;
        request.Recurso.Salt  = salt;

        await _unitOfWork.RecursoRepository.AddAsync(_mapper.Map <Recurso>(request.Recurso));

        bool success = await _unitOfWork.SaveChangesAsync();

        OperationResult result = success ? OperationResult.Success : OperationResult.Failed;

        return(result);
    }