示例#1
0
        /// <summary>
        /// Genera el destinatario de la carta
        /// </summary>
        /// <param name="doc"></param>
        /// <returns></returns>
        private Document ObtenerComplemento(Document doc, CartaEncomiendaViewModel modelo)
        {
            var complemento = new Paragraph(15.0f, "C. AGENTE ADUANAL", new Font(Font.FontFamily.UNDEFINED, 10.0f, Font.BOLD, BaseColor.BLACK));

            complemento.Alignment = Element.ALIGN_LEFT;
            doc.Add(complemento);

            complemento           = new Paragraph(15.0f, modelo.NombreAgenteAduanal, new Font(Font.FontFamily.UNDEFINED, 10.0f, Font.BOLD, BaseColor.BLACK));
            complemento.Alignment = Element.ALIGN_LEFT;
            doc.Add(complemento);

            complemento           = new Paragraph(15.0f, "PATENTE: " + modelo.Patente, new Font(Font.FontFamily.UNDEFINED, 10.0f, Font.BOLD, BaseColor.BLACK));
            complemento.Alignment = Element.ALIGN_LEFT;
            doc.Add(complemento);

            complemento           = new Paragraph(15.0f, "DIRECCIÓN: ", new Font(Font.FontFamily.UNDEFINED, 10.0f, Font.BOLD, BaseColor.BLACK));
            complemento.Alignment = Element.ALIGN_LEFT;
            doc.Add(complemento);

            complemento           = new Paragraph(15.0f, modelo.DirreccionPatente, new Font(Font.FontFamily.UNDEFINED, 10.0f, Font.BOLD, BaseColor.BLACK));
            complemento.Alignment = Element.ALIGN_LEFT;
            doc.Add(complemento);

            return(doc);
        }
示例#2
0
        /// <summary>
        /// Añade los datos faltantes de la carta que provienen del view model
        /// por medio de stirng format
        /// </summary>
        /// <param name="texto"></param>
        /// <param name="modelo"></param>
        /// <param name="rfc"></param>
        /// <returns></returns>
        private string RemplazarDatos(string texto, CartaEncomiendaViewModel modelo, string rfc)
        {
            var textoDato = string.Empty;


            return(textoDato);
        }
        public JsonResult TestCarta()
        {
            var modelo = new CartaEncomiendaViewModel
            {
                IdPrecliente            = 2,
                IdUsuario               = 1,
                NombreNotarioPublico    = "Nombre Notario Publico",
                PeriodoCompredidoInicio = DateTime.Now,
                PeriodoCompredidoFin    = DateTime.Now,
                CiudadNotariado         = "Cuernavaca",
                EstadoNotariado         = "Morelos",
                MembreteEmpresa         = "Membrete Empresa",
                NumeroEscritura         = "Numero Escritura",
                NumeroNotaria           = "Numero Notaria",
                NombreAgenteAduanal     = "EDUARDO MARTINIANO VILLARREAL DELGADO",
                Patente           = "3457",
                DirreccionPatente = "TAXCO NO.3660 COL.MEXICO, NUEVO LAREDO,TAM C.P.88280"
            };

            registroCliente.GenerarCartaEncomienda(modelo, Server.MapPath("~/"));
            return(Json(string.Empty, JsonRequestBehavior.AllowGet));
        }
        public async Task <JsonResult> GenerarCartaenc(CartaEncomiendaViewModel modelo)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    return(await Task.Run(() =>
                    {
                        var resultado = registroCliente.GenerarCartaEncomienda(modelo, Server.MapPath("~/"));

                        if (string.IsNullOrEmpty(resultado))
                        {
                            return Json(new { resultado = false, mensaje = "Carta encomienda no generada." }, JsonRequestBehavior.AllowGet);
                        }
                        else
                        {
                            return Json(new { resultado = true, documento = resultado }, JsonRequestBehavior.AllowGet);
                        }
                    }));
                }
                else
                {
                    return(Json(new { resultado = false, mensaje = "Ocurrió un error al obtener los datos." }, JsonRequestBehavior.AllowGet));
                }
            }
            catch (System.Exception ex)
            {
                return(await Task.Run(() =>
                {
                    return Json(new
                    {
                        resultado = false,
                        mensaje = "Ocurrió un error al obtener los datos.",
                        ErroTecnico = ex.Message
                    }, JsonRequestBehavior.AllowGet);
                }));
            }
        }
示例#5
0
        /// <summary>
        /// Obtiene un arreglo con los datos faltantes de la carta
        /// </summary>
        /// <param name="modelo"></param>
        /// <param name="nombreRepresentante"></param>
        /// <param name="razonSocial"></param>
        /// <param name="rfc"></param>
        /// <returns></returns>
        private string[] ObtenerDatosFaltantes(CartaEncomiendaViewModel modelo, ClienteDTO modeloDTO)

        {
            FechaHelper fechaHelper = new FechaHelper();

            var datos = new string[] { "       " + modeloDTO.RepresentanteLegal,
                                       modeloDTO.NombreFiscal,
                                       modeloDTO.ObtenerDomicilioFiscal,
                                       modeloDTO.RFC,
                                       modelo.NumeroEscritura,
                                       modelo.NombreNotarioPublico,
                                       modelo.NumeroNotaria,
                                       modelo.CiudadNotariado + ", " + modelo.EstadoNotariado,
                                       "AUTORIZARLO",
                                       modelo.PeriodoCompredidoInicio.Day.ToString(),
                                       fechaHelper.ObtenerNombreMes(modelo.PeriodoCompredidoInicio.Month),
                                       modelo.PeriodoCompredidoInicio.Year.ToString(),
                                       modelo.PeriodoCompredidoFin.Day.ToString(),
                                       fechaHelper.ObtenerNombreMes(modelo.PeriodoCompredidoFin.Month),
                                       modelo.PeriodoCompredidoFin.Year.ToString() };

            return(datos);
        }
示例#6
0
        public string GenerarCartaEncomienda(CartaEncomiendaViewModel modelo, ClienteDTO modeloDTO, string rutaFisica)
        {
            string nombreCarta           = "CartaEncomienda" + modelo.IdPrecliente + ".pdf";
            EventoCartaEncomienda evento = new EventoCartaEncomienda();

            evento.Encabezado = modelo.MembreteEmpresa;

            var datos = ObtenerDatosFaltantes(modelo, modeloDTO);

            // \\ArchivoTexto\\cuerpoCartaEncomienda.txt
            try
            {
                var cuerpo   = File.ReadAllText(rutaFisica + "ArchivoTexto\\cuerpoCartaEncomienda.txt");
                var parrafos = cuerpo.Split('@');

                Document  doc    = new Document(PageSize.LETTER);
                PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream(rutaFisica + "Docs\\" + nombreCarta, FileMode.Create));

                doc.AddTitle("Carta Encomienda");
                doc.AddCreator("OneCore");
                doc.Open();
                writer.PageEvent = evento;

                Font fuente = new Font(Font.FontFamily.UNDEFINED, 9.3f, Font.NORMAL, BaseColor.BLACK);

                doc.Add(new Paragraph(10.0f, string.Empty, new Font(Font.FontFamily.UNDEFINED, 9.3f, Font.NORMAL, BaseColor.BLACK)));
                doc = SaltoLinea(4, doc);

                doc.Add(ObtenerFecha(modeloDTO.Ciudad, modeloDTO.Estado));
                doc = SaltoLinea(1, doc);
                doc.Add(ObtenerAsunto());
                var complemento = new Paragraph(10.0f, "despachoaduanal de mercancías.", new Font(Font.FontFamily.UNDEFINED, 9.3f, Font.NORMAL, BaseColor.BLACK));
                complemento.IndentationLeft = 168.0f;
                doc.Add(complemento);
                doc = SaltoLinea(4, doc);
                doc = ObtenerComplemento(doc, modelo);
                doc = SaltoLinea(1, doc);

                for (int index = 0; index < parrafos.Length; index++)
                {
                    var parrafo = new Paragraph(11.0f, parrafos[index], fuente);
                    if (index == 0)
                    {
                        parrafo = RemplazarDatos(parrafos[index], datos);
                    }

                    if (index == 2)
                    {
                        parrafo = AgregarFrase(parrafos[index], "a favor del Agente Aduanal");
                    }

                    parrafo.Alignment = Element.ALIGN_JUSTIFIED;
                    doc.Add(parrafo);
                }

                doc = SaltoLinea(4, doc);

                var firma = new Paragraph(10.0f, "PROTESTAMOS LO NECESARIO", new Font(Font.FontFamily.UNDEFINED, 9.3f, Font.BOLD, BaseColor.BLACK));
                firma.Alignment = Element.ALIGN_CENTER;
                doc.Add(firma);

                doc = SaltoLinea(1, doc);

                firma           = new Paragraph(10.0f, modeloDTO.RepresentanteLegal, new Font(Font.FontFamily.UNDEFINED, 9.5f, Font.BOLD, BaseColor.BLACK));
                firma.Alignment = Element.ALIGN_CENTER;
                doc.Add(firma);

                firma           = new Paragraph(10.0f, modeloDTO.RFC, new Font(Font.FontFamily.UNDEFINED, 9.5f, Font.BOLD, BaseColor.BLACK));
                firma.Alignment = Element.ALIGN_CENTER;
                doc.Add(firma);

                doc = SaltoLinea(4, doc);

                firma           = new Paragraph(10.0f, "REPRESENTANTE LEGAL", new Font(Font.FontFamily.UNDEFINED, 9.3f, Font.BOLD, BaseColor.BLACK));
                firma.Alignment = Element.ALIGN_CENTER;
                doc.Add(firma);

                doc.Close();
                writer.Close();

                return(nombreCarta);
            }
            catch (Exception ex)
            {
                return(string.Empty);
            }
        }