public AtividadeAcademicaDTO(AtividadeAcademica a) { Id = a.Id; Nome = a.Nome; Descricao = a.Descricao; Preco = a.Preco.ToString(); Data = string.Concat(a.Data.Day + "/" + a.Data.Month + "/" + a.Data.Year); Local = a.LocalAtividadeAcademica.Nome; LocalLatitude = a.LocalAtividadeAcademica.Latitude; LocalLongitude = a.LocalAtividadeAcademica.Longitude; ImagemUrl = a.ImagemUrl; PontosVenda = a.PontosVenda; }
public async Task <IActionResult> Create([Bind("Id,Data,Descricao,SelectedLocalId,Nome,PontosVenda,Preco")] AtividadeAcademicaViewModel vm, IFormFile Imagem) { if (ModelState.IsValid && Imagem != null && Imagem.Length > 0 && FilesHelper.VerifyFileSize(Imagem) && FilesHelper.VerifyFileExtension(Imagem.FileName)) { var atividade = new AtividadeAcademica(); var upload = Path.Combine(_env.WebRootPath, "imagens", "atividades"); // guardar imagem using (var fileStream = new FileStream(Path.Combine(upload, Imagem.FileName), FileMode.Create)) { await Imagem.CopyToAsync(fileStream); } // guardar imagem thumbnail var thumbnail = Path.GetFileNameWithoutExtension(Path.Combine(upload, Imagem.FileName)); thumbnail += "_tb"; using (var stream = new FileStream(Path.Combine(upload, Imagem.FileName), FileMode.Open)) using (var output = new FileStream(Path.Combine(upload, thumbnail + ".jpg"), FileMode.OpenOrCreate)) { Image image = new Image(stream); image.Resize(image.Width / 2, image.Height / 2) .Save(output); } atividade.Data = DateTime.Parse(vm.Data); atividade.Descricao = vm.Descricao; atividade.Nome = vm.Nome; atividade.Preco = Convert.ToDecimal(vm.Preco); atividade.PontosVenda = vm.PontosVenda; atividade.ImagemPath = "\\imagens\\atividades\\" + Imagem.FileName; atividade.ImagemUrl = HttpContext.Request.Host.Host + "/imagens/atividades/" + Imagem.FileName; var local = await _locaisRepository.Get(vm.SelectedLocalId); if (local != null) { atividade.LocalAtividadeAcademicaId = vm.SelectedLocalId; atividade.LocalAtividadeAcademica = local; } await _repository.Save(atividade); return(RedirectToAction("Index")); } var lista_locais = await _locaisRepository.FindAll(); ViewBag["LocalAtividadeAcademicaId"] = new SelectList(lista_locais, "Id", "Nome"); return(View(vm)); }
public AtividadeAcademicaViewModel(AtividadeAcademica atividade) { Id = atividade.Id; Nome = atividade.Nome; Descricao = atividade.Descricao; Preco = atividade.Preco.ToString(); Data = string.Concat(atividade.Data.Day + "/" + atividade.Data.Month + "/" + atividade.Data.Year); SelectedLocalId = atividade.LocalAtividadeAcademicaId; PontosVenda = atividade.PontosVenda; ImagemPath = atividade.ImagemPath; ImagemUrl = atividade.ImagemUrl; if (atividade.LocalAtividadeAcademica != null) { SelectedLocal = atividade.LocalAtividadeAcademica; } }