コード例 #1
0
        private Modelo.Dominio.Entidades.DigitalizacionVUCEM InsertarArchivo(Modelo.Dominio.Entidades.DigitalizacionVUCEM digitalizacion)
        {
            var archivo = digitalizacion.ArchivoFisico;
            var req     = new Template.Modelo.Dominio.Entidades.ExpedienteDigital.ExpedienteDigital()
            {
                IdEmpresa       = archivo.IdEmpresa,
                NombreOrigen    = archivo.NombreArchivo,
                NombreDestino   = archivo.NuevoNombreArchivo,
                Path            = archivo.PathDestino,
                IdUsuario       = 0,//pendiente
                IdTipoDocumento = 2
            };
            var io = FactoryEngine <IExpedienteDigitalDominio> .GetInstance("IExpedienteDigitalDominioConfig");

            req = io.InsertarExpedienteDigital(req);
            bool ok = false;

            if (req.IdExpedienteDigital != 0)
            {
                if (iDigitalizacionVUCEMRepositorio.InsertaGrupoArchivo(digitalizacion.IdPedimento,
                                                                        req.IdExpedienteDigital,
                                                                        archivo.IdEmpresa))
                {
                    if (iDigitalizacionVUCEMRepositorio.CierraEdocument(archivo.IdEmpresa,
                                                                        digitalizacion.IdBitacoraEdocumentVUCEM, digitalizacion.IdPedimento))
                    {
                        return(digitalizacion);
                    }
                }
            }
            return(null);
        }
コード例 #2
0
        private Modelo.Dominio.Entidades.DigitalizacionVUCEM GenerarLlamadoEspecifico(Modelo.Dominio.Entidades.DigitalizacionVUCEM documento, ConsultaDigitalizacionVUCEMPor consultaPor)
        {
            //var vucem = Util.ServicioVUCEM();
            var io = FactoryEngine <IOperacionEmpresaDominio> .GetInstance("IOperacionEmpresaDominioConfig");

            var entidad = new Modelo.Dominio.Entidades.DigitalizacionVUCEM();

            switch (consultaPor)
            {
            case ConsultaDigitalizacionVUCEMPor.Empresa:
                var req = new EntidadEmpresa()
                {
                    OperacionEspecifica = OperacionEmpresaItem.DameDatosEmpresaXId,
                    DatosEmpresa        = new Empresa()
                    {
                        IdEmpresaVw = documento.IdEmpresa
                    },
                    DatosPatente = new Patente()
                    {
                        IdPatente = documento.IdPatente
                    }
                };
                var response = io.OperacionEmpresaItem(req);
                documento.Documento.RFC             = response.DatosEmpresa.RFC;
                documento.Documento.PasswordWSVucem = response.DatosEmpresa.WebKeyVUCEM;
                break;

            case ConsultaDigitalizacionVUCEMPor.Patente:
                req = new EntidadEmpresa()
                {
                    OperacionEspecifica = OperacionEmpresaItem.DameDatosPatenteXId,
                    DatosEmpresa        = new Empresa()
                    {
                        IdEmpresaVw = documento.IdEmpresa
                    },
                    DatosPatente = new Patente()
                    {
                        IdPatente = documento.IdPatente
                    }
                };
                response = io.OperacionEmpresaItem(req);
                documento.Documento.RFC             = response.DatosPatente.RFC;
                documento.Documento.PasswordWSVucem = response.DatosPatente.WebKeyVUCEM;
                break;
            }
            return(documento);
            //var response = vucem.ConsultaEdocumentVucem(new ConsultaEdocumentVUCEMRequest());
        }
コード例 #3
0
        private Modelo.Dominio.Entidades.DigitalizacionVUCEM GetDataParaFTP(
            Modelo.Dominio.Entidades.DigitalizacionVUCEM item)
        {
            var io = FactoryEngine <IOperacionEmpresaDominio> .GetInstance("IOperacionEmpresaDominioConfig");

            var req = new EntidadEmpresa()
            {
                OperacionEspecifica = OperacionEmpresaItem.DameDatosEmpresaXId,
                DatosEmpresa        = new Empresa()
                {
                    IdEmpresaVw = item.IdEmpresa
                },
                DatosPatente = new Patente()
                {
                    IdPatente = item.IdPatente
                }
            };
            var response = io.OperacionEmpresaItem(req);

            item.IdCliente = response.DatosEmpresa.IdClienteVw;
            req            = new EntidadEmpresa()
            {
                OperacionEspecifica = OperacionEmpresaItem.DameDatosPatenteXId,
                DatosEmpresa        = new Empresa()
                {
                    IdEmpresaVw = item.IdEmpresa
                },
                DatosPatente = new Patente()
                {
                    IdPatente = item.IdPatente
                }
            };
            response     = io.OperacionEmpresaItem(req);
            item.Patente = response.DatosPatente.NumeroPatente;
            return(item);
        }
コード例 #4
0
        public Modelo.Dominio.Entidades.DigitalizacionVUCEM GetDigitalizacionVUCEM(Modelo.Dominio.Entidades.DigitalizacionVUCEM digitalizacion)
        {
            //using (var transaction = new TransactionScope(TransactionScopeOption.Required))
            {
                digitalizacion = LlamarDigitalizacionVUCEM(digitalizacion, ConsultaDigitalizacionVUCEMPor.Empresa);
                if (digitalizacion.ArchivoFisico.ArchivoBytes == null)
                {
                    digitalizacion = LlamarDigitalizacionVUCEM(digitalizacion, ConsultaDigitalizacionVUCEMPor.Patente);
                    if (digitalizacion.ArchivoFisico.ArchivoBytes == null)
                    {
                        throw new ErrorAlDescargarLaDigitalizacionVUCEM();
                    }
                }
                var io = FactoryEngine <IExpedienteDigitalDominio> .GetInstance("IExpedienteDigitalDominioConfig");

                digitalizacion = InsertarArchivo(digitalizacion);
                if (digitalizacion == null)
                {
                    throw new ErrorInsertarDigitalizacion();
                }
                //transaction.Complete();
            }
            return(digitalizacion);
        }
コード例 #5
0
        public Modelo.Dominio.Entidades.DigitalizacionVUCEM LlamarDigitalizacionVUCEM(Modelo.Dominio.Entidades.DigitalizacionVUCEM documento, ConsultaDigitalizacionVUCEMPor consultaPor)
        {
            documento = GenerarLlamadoEspecifico(documento, consultaPor);
            var request = new ConsultaDocumentoDigitalizadoVUCEMRequest()
            {
                request = new DocumentoVUCEMRequest()
                {
                    Entidad = documento.Documento
                }
            };

            var vucem    = Util.ServicioVUCEM();
            var response = vucem.ConsultaDocumentoDigitalizadoVUCEM(request);

            documento.ArchivoFisico = new Archivo();
            documento.ArchivoFisico.ArchivoBytes =
                response.ConsultaDocumentoDigitalizadoVUCEMResult.Entidad.DocumentoPDF;

            if (response.ConsultaDocumentoDigitalizadoVUCEMResult.EjecucionValida)
            //generar el request archivo
            {
                documento = GetDataParaFTP(documento);
                documento.ArchivoFisico = GuardarArchivoFTP(documento.ArchivoFisico, documento.IdCliente,
                                                            documento.IdEmpresa, documento.Patente, documento.Documento.Edocument);
            }
            return(documento);
        }