public List <CertificadoViewModel> Adicionar(CertificadoViewModel certificadoViewModel, int[] funcionarios) { var certificado = Mapper.Map <CertificadoViewModel, Certificado>(certificadoViewModel); //Fazer validação de repetido List <CertificadoViewModel> certificados = new List <CertificadoViewModel>(); CertificadoViewModel certificadovm; certificado.DataEmissao = DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString() + "-" + DateTime.Now.Day.ToString(); certificado.InstituicaoCursoId = 1; BeginTransaction(); foreach (var f in funcionarios) { certificado.FuncionarioId = f; _certificadoService.Adicionar(certificado, certificadoViewModel.TipoCursoId, certificadoViewModel.DataRealizacao); certificadovm = Mapper.Map <Certificado, CertificadoViewModel>(certificado); certificadovm.Funcionario = _funcionarioService.ObterPorId(f); certificados.Add(certificadovm); } Commit(); return(certificados); }
public bool Atualizar(CertificadoViewModel cursoViewModel) { var Curso = Mapper.Map <CertificadoViewModel, Certificado>(cursoViewModel); BeginTransaction(); _certificadoService.Atualizar(Curso); Commit(); return(true); }
public bool Adicionar(CertificadoViewModel certificadoViewModel) { var certificado = Mapper.Map <CertificadoViewModel, Certificado>(certificadoViewModel); BeginTransaction(); _certificadoService.Adicionar(certificado); Commit(); return(true); }
public ClienteCertificadoViewModel(ClienteCertificado obj) { Id = obj.Id; IdCliente = obj.IdCliente; IdCertificado = obj.IdCertificado; DataCadastro = obj.DataCadastro?.ToString("dd/MM/yyyy HH:mm:ss"); Descricao = obj.Descricao; Certificado = new CertificadoViewModel(obj.Certificado); }
public ActionResult Edit(CertificadoViewModel certificadoViewModel) { if (ModelState.IsValid) { if (!_certificadoAppService.Atualizar(certificadoViewModel)) { TempData["Mensagem"] = "Atenção, há um certificado com os mesmos dados já cadastrado"; } else { return(RedirectToAction("Index")); } } return(View(certificadoViewModel)); }
public ActionResult Create(CertificadoViewModel certificadoViewModel, int[] funcionarios) { if (ModelState.IsValid) { var certificado = _certificadoAppService.Adicionar(certificadoViewModel, funcionarios); if (certificado == null || certificado.Count <= 0) { TempData["Mensagem"] = "Atenção, há um certificado com os mesmos dados já cadastrado"; } else { var pdf = new ViewAsPdf() { ViewName = "Gerar", Model = certificado, FileName = "certificado.pdf", PageSize = Size.A4, PageOrientation = Orientation.Landscape, PageMargins = new Margins { Bottom = 0, Left = 0, Right = 0, Top = 0 }, }; return(pdf); } } List <SelectListItem> ddlStatusCertificado = new List <SelectListItem>(); ddlStatusCertificado.Add(new SelectListItem() { Text = "Ativo", Value = "1" }); ddlStatusCertificado.Add(new SelectListItem() { Text = "Vencido", Value = "2" }); TempData["ddlStatusCertificado"] = ddlStatusCertificado; ViewBag.TipoCursoId = new SelectList(_tipoCursoAppService.ObterTodos(), "TipoCursoId", "Nome"); ViewBag.CursoId = new SelectList(_cursoAppService.ObterTodos(), "CursoId", "Data"); ViewBag.EmpresaId = new SelectList(_empresaAppService.ObterTodos(), "EmpresaId, NomeFantasia"); ViewBag.FuncionarioId = new SelectList(_funcionarioAppService.ObterTodos(), "FuncionarioId", "Nome"); ViewBag.InstituicaoCursoId = new SelectList(_instituicaoCursoAppService.ObterTodos(), "InstituicaoCursoId", "Nome"); return(View(certificadoViewModel)); }
public async Task <IActionResult> Index(int?idTipo) { try { var tipo = 1; tipo = idTipo == null || idTipo == 0 ? tipo = 1 : idTipo.Value; var certificacos = await db.Certificado.OrderByDescending(x => x.FechaGeneracion).Where(x => x.Tipo == tipo) .Select(x => new Certificado { CertificadoId = x.CertificadoId, FechaGeneracion = x.FechaGeneracion, ProductoFinal = x.ProductoFinal != null? new ProductoFinal { ProductoFinalId = x.ProductoFinal.ProductoFinalId, Codigo = x.ProductoFinal.Codigo, Descripcion = x.ProductoFinal.Descripcion } :new ProductoFinal { ProductoFinalId = 0, Codigo = "N/A", Descripcion = "N/A", }, OrdenFinal = x.OrdenFinal, CodigoCertificado = x.CodigoCertificado, FileUrl = x.FileUrl, NumeroOrden = x.NumeroOrden, NumeroGuia = x.NumeroGuia, ProductoFinalId = x.ProductoFinalId, Liberado = x.Liberado == null || x.Liberado == false ? false :true, ArchivoCargado = x.ArchivoCargado, Tipo = x.Tipo, }).OrderByDescending(x => x.CertificadoId).ToListAsync(); var viewModel = new CertificadoViewModel { Tipo = tipo, ListaCertificados = certificacos }; return(View(viewModel)); } catch (Exception ex) { throw; } }
// GET: Certificados/Create public ActionResult Create() { var certificadoViewModel = new CertificadoViewModel(); List <SelectListItem> ddlStatusCertificado = new List <SelectListItem>(); ddlStatusCertificado.Add(new SelectListItem() { Text = "Ativo", Value = "1" }); ddlStatusCertificado.Add(new SelectListItem() { Text = "Vencido", Value = "2" }); TempData["ddlStatusCertificado"] = ddlStatusCertificado; ViewBag.TipoCursoId = new SelectList(_tipoCursoAppService.ObterTodos(), "TipoCursoId", "Nome"); ViewBag.EmpresaId = new SelectList(_empresaAppService.ObterTodos(), "EmpresaId", "NomeFantasia"); ViewBag.CursoId = new SelectList(_cursoAppService.ObterTodos(), "CursoId", "Data"); ViewBag.FuncionarioId = new SelectList(_funcionarioAppService.ObterPorEmpresa(certificadoViewModel.EmpresaId), "FuncionarioId", "Nome"); ViewBag.InstituicaoCursoId = new SelectList(_instituicaoCursoAppService.ObterTodos(), "InstituicaoCursoId", "Nome"); return(View(certificadoViewModel)); }
public ActionResult Create(CertificadoViewModel certificadoViewModel) { if (ModelState.IsValid) { if (ModelState.IsValid) { if (!_certificadoAppService.Adicionar(certificadoViewModel)) { TempData["Mensagem"] = "Atenção, há um certificado com os mesmos dados já cadastrado"; } else { return(RedirectToAction("Index")); } } } List <SelectListItem> ddlStatusCertificado = new List <SelectListItem>(); ddlStatusCertificado.Add(new SelectListItem() { Text = "Ativo", Value = "1" }); ddlStatusCertificado.Add(new SelectListItem() { Text = "Vencido", Value = "2" }); TempData["ddlStatusCertificado"] = ddlStatusCertificado; ViewBag.CursoId = new SelectList(_cursoAppService.ObterTodos(), "CursoId", "Data"); ViewBag.EmpresaId = new SelectList(_empresaAppService.ObterTodos(), "EmpresaId, NomeFantasia"); ViewBag.FuncionarioId = new SelectList(_funcionarioAppService.ObterTodos(), "FuncionarioId", "Nome"); ViewBag.InstituicaoCursoId = new SelectList(_instituicaoCursoAppService.ObterTodos(), "InstituicaoCursoId", "Nome"); return(View(certificadoViewModel)); }
public ActionResult generateCertificadoPDF(CertificadoViewModel data) { return(View(data)); }
/// <summary> /// Genera un certificado en formato PDF de cada uno de los colaboradores con donaciones en el año anterior /// </summary> /// <returns></returns> public ActionResult Certificados() { //Se declara el objeto para guardar los datos y pasárselos al writer en PDF var certificadosData = new GenerarCertificadosViewModel() { listadoColaboradores = new List <CertificadoViewModel>() }; var fechaActual = DateTime.Now; // Se detecta el año actual y se calcula el anterior var añoCertificados = fechaActual.Date.AddYears(-1); // Se recorre la lista de colaboradores, obteniendo sus donaciones y calculando el importe total var colaboradoresList = db.colaboradores.Include(x => x.donaciones).ToList(); foreach (colaboradores col in colaboradoresList) { // Se guarda la donación en un objeto var donacion = col.donaciones.FirstOrDefault(); try { var fechaAlta = donacion.fechaAlta; // Calcular el número de meses desde que es colaborador Double numMeses = ((fechaActual.Year - fechaAlta.Year) * 12) + fechaActual.Month - fechaAlta.Month; // Si el numMeses es mayor que 12, lo truncamos a 12 if (numMeses > 12) { numMeses = 12; } Double cantidadTotalDonada = 0.0; // Con el switch miramos la periodicidad y calculamos un valor para multiplicar por la cantidad y obtener la cantidad total switch (donacion.idPeriodicidad) { //Mensual: 12 x la cantidad case 1: cantidadTotalDonada = numMeses * donacion.cantidad; break; //Bimensual: numMeses / 2 * cantidad case 2: numMeses = numMeses / 2; cantidadTotalDonada = (Math.Truncate(numMeses / 2)) * donacion.cantidad; break; //Trimestral: numMeses / 3 * cantidad case 3: cantidadTotalDonada = (Math.Truncate(numMeses / 3)) * donacion.cantidad; break; //Semestral: numMeses / 6 * cantidad case 4: cantidadTotalDonada = (Math.Truncate(numMeses / 6)) * donacion.cantidad; break; //Anual: numMeses / 12 * cantidad case 5: cantidadTotalDonada = (Math.Truncate(numMeses / 12)) * donacion.cantidad; break; default: cantidadTotalDonada = 0.0; break; } // Genero el objeto para el certificado var certificadoModel = new CertificadoViewModel() { nombreApellidos = col.apellidos + ", " + col.nombre, CIF_NIF = col.CIF_NIF, cantidadTotal = Math.Round(cantidadTotalDonada, 2) }; // Se añade el objeto generado a la lista certificadosData.listadoColaboradores.Add(certificadoModel); }catch (Exception e) { Console.Write("Colaborador con donación nula: " + e.Message); continue; } } GenerarCertificadosRenta(certificadosData); return(RedirectToAction("Index")); }