public async Task <IActionResult> Create([Bind("DadorId,Nome,Morada,DataNasc,LocalNasc,DocIdentificacao,Nacionalidade,Profissao,GrauEscolaridade,EstadoCivil,NumFilhos,Altura,Peso,CorPele,CorOlhos,CorCabelo,TexturaCabelo,GrupoSanguineo,Etnia,IniciaisDador,FaseDador,EstadoDador,DadosDador,NumAbortos,TotalGestacoes")] Dador dador, Microsoft.AspNetCore.Http.IFormFile file) { var fileUpload = ""; dador.TipoRegisto = RegistoDadorEnum.Normal; if (ModelState.IsValid) { var settings = _context.Settings.FirstOrDefault(); var happyHour = false; if (settings != null) { if (DateTime.Now.TimeOfDay <= settings.HappyHourEnd && DateTime.Now.TimeOfDay >= settings.HappyHourBegin) { //happyHour = true; dador.TipoRegisto = RegistoDadorEnum.HappyHour; //save image if (file.Length > 0) { fileUpload = await file.SaveFileDefault(_hostingEnvironment, Path.Combine(_hostingEnvironment.WebRootPath, "uploads", "dador")); if (fileUpload != "") { dador.FotoId = fileUpload; // Verificação cara var resultado = await MatchHelper.MicrosoftCognitiveServices.Faces.FindSimilarFaceList( Path.Combine(_hostingEnvironment.WebRootPath, "uploads", "dador", fileUpload), fileUpload); if (resultado.Item1.Any()) { if (resultado.Item1.FirstOrDefault().Confidence >= settings.PhotoMatchValue) { dador.TipoRegisto = RegistoDadorEnum.Extra; } } } } } } dador.IniciaisDador = RetrieveInitials(dador.Nome); dador = _encryptor.EncryptData(dador); _context.Add(dador); await _context.SaveChangesAsync(); return(RedirectToAction("IndexRegistered", "Home")); } return(View(dador)); }
public async Task <IActionResult> Create([Bind("Id,Data,Centro,RefExterna,IdadeHomem,RacaHomem,AlturaHomem,CorCabeloHomem,GrupoSanguineoHomem,TexturaCabeloHomem,CorOlhosHomem,CorPeleHomem,IdadeMulher,RacaMulher,AlturaMulher,CorCabeloMulher,GrupoSanguineoMulher,TexturaCabeloMulher,CorOlhosMulher,CorPeleMulher")] PedidoGametasViewModel pedidoGametasViewModel, Microsoft.AspNetCore.Http.IFormFile fileHomem, Microsoft.AspNetCore.Http.IFormFile fileMulher) { if (ModelState.IsValid) { var novoCasal = new Models.Casal { OriginouGravidez = SimNaoEnum.Indefinido, NrFilhos = 0, IdadeHomem = pedidoGametasViewModel.IdadeHomem, RacaHomem = pedidoGametasViewModel.RacaHomem, AlturaHomem = pedidoGametasViewModel.AlturaHomem, CorCabeloHomem = pedidoGametasViewModel.CorCabeloHomem, GrupoSanguineoHomem = pedidoGametasViewModel.GrupoSanguineoHomem, TexturaCabeloHomem = pedidoGametasViewModel.TexturaCabeloHomem, CorOlhosHomem = pedidoGametasViewModel.CorOlhosHomem, CorPeleHomem = pedidoGametasViewModel.CorPeleHomem, IdadeMulher = pedidoGametasViewModel.IdadeMulher, RacaMulher = pedidoGametasViewModel.RacaMulher, AlturaMulher = pedidoGametasViewModel.AlturaMulher, CorCabeloMulher = pedidoGametasViewModel.CorCabeloMulher, GrupoSanguineoMulher = pedidoGametasViewModel.GrupoSanguineoMulher, TexturaCabeloMulher = pedidoGametasViewModel.TexturaCabeloMulher, CorOlhosMulher = pedidoGametasViewModel.CorOlhosMulher, CorPeleMulher = pedidoGametasViewModel.CorPeleMulher }; var pathUpload = Path.Combine(_hostingEnvironment.WebRootPath, "uploads", "casais"); var fileUpload = ""; //save image if (fileHomem.Length > 0) { fileUpload = await fileHomem.SaveFileDefault(_hostingEnvironment, pathUpload); if (fileUpload != "") { var fotoCasal = MatchHelper.MicrosoftCognitiveServices.Faces.AddFaceToFaceList( Path.Combine(pathUpload, fileUpload), fileUpload); novoCasal.FotoHomemId = fotoCasal.ToString(); } } if (fileMulher.Length > 0) { fileUpload = await fileMulher.SaveFileDefault(_hostingEnvironment, Path.Combine(_hostingEnvironment.WebRootPath, "uploads", "casais")); if (fileUpload != "") { var fotoCasal = MatchHelper.MicrosoftCognitiveServices.Faces.AddFaceToFaceList( Path.Combine(pathUpload, fileUpload), fileUpload); novoCasal.FotoHomemId = fotoCasal.ToString(); } } await _context.Casal.AddAsync(novoCasal); await _context.SaveChangesAsync(); var objNovoCasal = await _context.Casal.LastOrDefaultAsync(); var novoPedidoGametas = new PedidoGametas { CasalId = objNovoCasal.CasalID, Data = pedidoGametasViewModel.Data, Centro = pedidoGametasViewModel.Centro, RefExterna = pedidoGametasViewModel.RefExterna, EstadoProcessoPedido = EstadoProcesso.EmAnalise }; await _context.PedidoGametas.AddAsync(novoPedidoGametas); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(pedidoGametasViewModel)); }