Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        public bool Atualizar(CertificadoViewModel cursoViewModel)
        {
            var Curso = Mapper.Map <CertificadoViewModel, Certificado>(cursoViewModel);

            BeginTransaction();
            _certificadoService.Atualizar(Curso);
            Commit();
            return(true);
        }
Ejemplo n.º 3
0
        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);
        }
Ejemplo n.º 5
0
 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));
 }
Ejemplo n.º 6
0
        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));
        }
Ejemplo n.º 7
0
        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;
            }
        }
Ejemplo n.º 8
0
        // 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));
        }
Ejemplo n.º 9
0
        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));
        }
Ejemplo n.º 10
0
 public ActionResult generateCertificadoPDF(CertificadoViewModel data)
 {
     return(View(data));
 }
Ejemplo n.º 11
0
        /// <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"));
        }