public void Patch_Success_Test() { var person = _faker.Person; var id = Guid.NewGuid(); var tels = new List <Telefone> { new Telefone("+55", "11", "90000-0000", id) }; var endereco = new Endereco("Rua", 10, "00000-000", "apto", "bairro", "cidade", "sp", Cadastro.Domain.Enums.TipoEnderecoEnum.Residencial, id); var funcionario = new Funcionario(id.ToString(), "matricular", "cargo", new Nome(person.FirstName, person.LastName), new DataNascimento(new System.DateTime(1987, 08, 14)), new Email(person.Email), tels, endereco, endereco); var funcionarioReq = new FuncionarioRequest() { Ativo = funcionario.Ativo, Cargo = funcionario.Cargo, DataNascimento = funcionario.DataNascimento.Date, Email = funcionario.Email.ToString(), Matricula = funcionario.Matricula, Nome = funcionario.Nome.PrimeiroNome, SobreNome = funcionario.Nome.SobreNome, UserId = funcionario.UserId, Telefones = funcionario.Telefones.Select(x => new TelefoneRequest { DDI = x.DDI, Telefone = $"{x.DDD}{x.NumeroTelefone}" }).ToList(), EnderecoResidencial = new EnderecoRequest { Rua = funcionario.EnderecoResidencial?.Rua, Numero = funcionario.EnderecoResidencial?.Numero, CEP = funcionario.EnderecoResidencial?.CEP, Complemento = funcionario.EnderecoResidencial?.Complemento, Bairro = funcionario.EnderecoResidencial?.Bairro, Cidade = funcionario.EnderecoResidencial?.Cidade, UF = funcionario.EnderecoResidencial?.UF, }, EnderecoComercial = new EnderecoRequest { Rua = funcionario.EnderecoComercial?.Rua, Numero = funcionario.EnderecoComercial?.Numero, CEP = funcionario.EnderecoComercial?.CEP, Complemento = funcionario.EnderecoComercial?.Complemento, Bairro = funcionario.EnderecoComercial?.Bairro, Cidade = funcionario.EnderecoComercial?.Cidade, UF = funcionario.EnderecoComercial?.UF, } }; _service.Setup(x => x.Atualizar(It.IsAny <Funcionario>(), It.IsAny <string>())).Returns(true); var controller = new FuncionarioController(_logger.Object, _service.Object); var result = controller.Patch(correlationId: Guid.NewGuid(), funcionarioReq) as OkObjectResult; _service.Verify(x => x.Atualizar(It.IsAny <Funcionario>(), It.IsAny <string>()), Times.Once); result.StatusCode.Should().Be(200); _outputHelper.WriteLine($"Expected: {200} Received: {result.StatusCode}"); }
public Funcionario(FuncionarioRequest funcionarioRequest) : base(funcionarioRequest) { Categoria = funcionarioRequest.Categoria; new AddNotifications <Funcionario>(this) .IfEqualsZero(p => p.Categoria); }
public async Task <string> UploadFuncionarios([FromForm] FuncionarioRequest objectFile) { ObjectReturn objectReturn = new ObjectReturn(); objectReturn = await _funcionarioApp.InsertFuncionario(objectFile); return(JsonConvert.SerializeObject(objectReturn)); }
private static void RemoveFile(FuncionarioRequest funcionarios) { var file_name = funcionarios.InputFile.FileName; if ((System.IO.File.Exists(file_name))) { System.IO.File.Delete(file_name); } }
private static async Task <byte[]> FileStreamToByte(FuncionarioRequest funcionarios) { using (var fileStream = new FileStream(funcionarios.InputFile.FileName, FileMode.Create)) { await funcionarios.InputFile.CopyToAsync(fileStream); return(await ByteFunctions.ConverteStreamToByteArray(funcionarios.InputFile.OpenReadStream())); } }
public async Task <Guid> AdicionarAsync(FuncionarioRequest request) { Funcionario participante = ConverterParaModel(request); ValidaSeExisteEmail(request.Email); await InserirAsync(participante); return(participante.Id); }
public IActionResult Post([FromHeader] Guid correlationId, [FromBody] FuncionarioRequest funcionario) { try { var tels = new List <Telefone>(); if (funcionario.Telefones != null && funcionario.Telefones.Any()) { foreach (var telefone in funcionario.Telefones) { tels.Add(new Telefone(telefone.DDI, telefone.Telefone[..2], telefone.Telefone[2..], Guid.Parse(funcionario.UserId)));
public async Task <ActionResult> Create([FromForm] FuncionarioRequest request) { try { return(RedirectToAction(nameof(Index))); } catch { return(View()); } }
public async Task <Response <bool> > CadastrarFuncionario(FuncionarioRequest request, string token) { var result = await $"{_baseUrl}/api/v1/Funcionario/funcionario" .AllowAnyHttpStatus() .WithOAuthBearerToken(token) .PostJsonAsync(request); if (result.StatusCode == (int)HttpStatusCode.OK) { return(Response <bool> .SuccessResult(true)); } return(Response <bool> .ErrorResult(result.ResponseMessage.ReasonPhrase)); }
public override Task <FuncionarioResponse> Cadastrar(FuncionarioRequest request, ServerCallContext context) { //try //{ // var result = _service.Cadastrar(funcionario); // return Ok(result); //} //catch (Exception ex) //{ // _logger.LogError(ex, "Post"); // return BadRequest(ex); //} return(Task.FromResult(new FuncionarioResponse())); }
public async Task <ActionResult> Edit(Guid id, [FromForm] FuncionarioRequest request) { try { if (!User.Identity.IsAuthenticated) { return(RedirectToAction("Index", "Home")); } if (Request.Form.Any(x => x.Key == "telefones.Id") && !string.IsNullOrEmpty(Request.Form["telefones.Id"].ToString())) { var ids = Request.Form["telefones.Id"].ToString().Split(','); var ddi = Request.Form["telefones.DDI"].ToString().Split(','); var telefone = Request.Form["telefones.Telefone"].ToString().Split(','); for (int i = 0; i < telefone.Length; i++) { request.Telefones.Add(new TelefoneRequest { DDI = ddi[i], Telefone = telefone[i], Id = int.Parse(ids[i]) }); } } await GetTokens(); var funcionario = await _apiService.AtualizarFuncionario(request, this.AccessToken); if (!funcionario.Sucesso) { ViewBag.erro = funcionario.Erro; } return(RedirectToAction("Edit", "Funcionario", new { id })); } catch (Exception ex) { _logger.LogError(ex, $"Erro ao atualizar usuário {id}"); return(RedirectToAction("Error", "Home")); } }
public async Task <ObjectReturn> InsertFuncionario(FuncionarioRequest funcionarioRequest) { ObjectReturn objectReturn = new ObjectReturn(); List <FuncionarioEntity> funcionarios = await _fileRepository.ReadCSVFile(funcionarioRequest); for (int position = 0; position < funcionarios.Count; position++) { using (var transaction = new TransactionScope(TransactionScopeAsyncFlowOption.Enabled)) { var success = await _funcionarioService.InsertFuncionario(funcionarios[position]); if (funcionarios[position].IsInvalid() || !success) { funcionarios[position].Notifications.ToList().ForEach(p => objectReturn.AddMessage(string.Format("Fail to process register : line: {0}, property: {1}, description: {2}", position + 1, p.Property, p.Message))); continue; } transaction.Complete(); objectReturn.AddMessage(string.Format("Line {0} - Funcionario {1}, ID {2} successfully inserted!", position + 1, funcionarios[position].Name, funcionarios[position].Id)); } } return(await Task.FromResult(objectReturn)); }
public async Task <List <FuncionarioEntity> > ReadCSVFile(FuncionarioRequest funcionarios) { string line; List <FuncionarioEntity> listOfFuncionarios = new List <FuncionarioEntity>(); byte[] funcionariofile = await FileStreamToByte(funcionarios); RemoveFile(funcionarios); using (var ms = new MemoryStream(funcionariofile)) using (var stream = new StreamReader(ms)) while ((line = await stream.ReadLineAsync()) != null) { var funcionario = _funcionarioService.FillFuncionariosByCsvLine(line); if (funcionario.Notifications.Count == 0) { listOfFuncionarios.Add(funcionario); } } return(listOfFuncionarios); }
/// <summary> /// Converte FuncionarioRequest para Funcionario /// </summary> /// <param name="request"></param> /// <returns></returns> private Funcionario ConverterParaModel(FuncionarioRequest request) { return(new Funcionario(request.Nome, request.Email, request.Cargo, request.Setor)); }
public async Task <IActionResult> Adicionar(FuncionarioRequest request) { return(Ok(await appService.AdicionarAsync(request))); }