Ejemplo n.º 1
0
        /// <summary>
        /// Funcion que dependiendo del tipo de operación inserta, actualiza o regis
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public CFDIOperacionResponse ExecuteOperacionCFDI(CFDIOperacionRequest request)
        {
            var response = new CFDIOperacionResponse()
            {
                EjecucionValida    = false,
                MensajeError       = String.Empty,
                IdUsuarioEjecucion = request.IdUsuarioEjecucion
            };

            try
            {
                switch (request.TipoDeOperacion)
                {
                case TipoOperacion.Insertar:
                    response.Item = cfdiDominio.InsertaFactura(request.Item);
                    break;

                case TipoOperacion.Actualizar:
                    break;
                }
                response.EjecucionValida = true;
            }
            catch (Exception ex)
            {
                //TODO: Debe procurar dar un mejor tratamiento a los mensajes de error
                //que serán retornados a la aplicación cliente
                response.MensajeError = ex.Message;
                using (LoggingHelper helper = new LoggingHelper(TipoRepositorio.Xml))
                {
                    helper.Registrar(ex);
                }
            }
            return(null);
        }
Ejemplo n.º 2
0
        public CFDIOperacionResponse CFDIExecute(CFDIOperacionRequest request)
        {
            var file     = ConvertirFileToByteArray(@"C:\Users\SistemasTI\Documents\script.sql");
            var response = new CFDIOperacionResponse();

            request.TipoDeOperacion = TipoOperacion.Insertar;
            request.Item            = new CFDI()
            {
                ArchivoFisico = new Archivo()
                {
                    ArchivoBytes          = file,
                    ExtensionArchivo      = ".sql",
                    FechaSubida           = DateTime.Now,
                    IdCliente             = 1,
                    IdEmpresa             = 1,
                    LongitudArchivo       = file.Length,
                    NombreCompletoArchivo = "acme.sql",
                    Patente = "3772"
                }
            };
            using (var controller = new CFDIController())
            {
                response = controller.ExecuteOperacionCFDI(request);
            }
            return(response);
        }