示例#1
0
        private void adicionarRegistroLogReporteBavaria(LogReporteBavaria item)
        {
            ICollection <DetLogBavaria> ICDetLogBavaria = new List <DetLogBavaria>();

            ICDetLogBavaria = LeerInformacionDetLogBavaria(item);
            if (ICDetLogBavaria.Count > 0)
            {
                foreach (var itemDetLogBavaria in ICDetLogBavaria)
                {
                    detLogBavarias.Add(ListDetLogBavaria(itemDetLogBavaria));
                    //itemDetLogBavaria.DEBA_SECUENCIA_NB,
                    //itemDetLogBavaria.DEBA_LOGBAVARIA_NB,
                    //itemDetLogBavaria.DEBA_OFICINA_NB,
                    //itemDetLogBavaria.DEBA_TRANSACCION_NB,
                    //itemDetLogBavaria.DEBA_LLAVE_V2,
                    //itemDetLogBavaria.DEBA_NUMACEPTA_NB,
                    //itemDetLogBavaria.DEBA_ESTADO_V2,
                    //itemDetLogBavaria.DEBA_SOAPENVIADO_V2,
                    //itemDetLogBavaria.DEBA_SOAPRECIBIDO_V2,
                    //itemDetLogBavaria.DEBA_FECPROCESA_DT,
                    //itemDetLogBavaria.DEBA_CAMPO1_NB,
                    //itemDetLogBavaria.DEBA_CAMPO2_DT,
                    //itemDetLogBavaria.DEBA_CAMPO3_V2);
                }
            }
            else
            {
                //...Falta Implementar
            }
        }
示例#2
0
        private void procesarDespacho(LogReporteBavaria logReporteBavaria)
        {
            validarDirectorio(logReporteBavaria.REBA_LLAVE_V2);
            console.CBlack();
            console.Cc("Procesando Planilla : " + logReporteBavaria.REBA_LLAVE_V2 + "  Fecha : " + logReporteBavaria.REBA_FECHA_DT);
            //System.Threading.Thread.Sleep(4000);
            ICConsultaInfoBavaria = new List <ConsultaInfoBavaria>();
            string[] _nParametros;
            object[] _vParametros;
            _nParametros = new string[1] {
                ":VIAJ_NOPLANILLA"
            };
            _vParametros = new object[1] {
                logReporteBavaria.REBA_LLAVE_V2
            };
            Factory data = new Factory(Usuario, Password, Ambiente);

            try
            {
                var dt = data.getTable("getInfoBavaria", _nParametros, _vParametros);
                if (dt.Rows.Count > 0)
                {
                    foreach (DataRow item in dt.Rows)
                    {
                        ICConsultaInfoBavaria.Add(addInfoBavaria(item));
                        break;
                    }
                }
            }
            catch (Exception ex)
            {
                ManejoError(ex, "var dtLogReporteDian = data.getTable(\"getLogReporteDian\", _nParametros, _vParametros);");
            }
            if (ICConsultaInfoBavaria.Count > 0)
            {
                procesarDespachoBavaria(ICConsultaInfoBavaria, logReporteBavaria);
            }
            else
            {
                console.Ih(" No hay registro para procesar...!!!");
            }
        }
示例#3
0
        private LogReporteBavaria addLogReporteBavaria(DataRow item)
        {
            console.Cgreen();

            LogReporteBavaria logReporteDian = new LogReporteBavaria();

            logReporteDian.REBA_SECUENCIA_NB   = double.Parse(item["REBA_SECUENCIA_NB"].ToString());
            logReporteDian.REBA_OFICINA_NB     = int.Parse(item["REBA_OFICINA_NB"].ToString());
            logReporteDian.REBA_TRANSACCION_NB = int.Parse(item["REBA_TRANSACCION_NB"].ToString());
            logReporteDian.REBA_LLAVE_V2       = item["REBA_LLAVE_V2"].ToString();
            logReporteDian.REBA_FECHA_DT       = DateTime.Parse(item["REBA_FECHA_DT"].ToString());
            logReporteDian.REBA_ESTADO_V2      = item["REBA_ESTADO_V2"].ToString();
            try
            {
                logReporteDian.REBA_CAMPO1_NB = double.Parse(item["REBA_CAMPO1_NB"].ToString());
            }
            catch (Exception ex)
            {
                logReporteDian.REBA_CAMPO1_NB = 0;
            }
            try
            {
                logReporteDian.REBA_CAMPO2_V2 = item["REBA_CAMPO2_DT"].ToString();
            }
            catch (Exception ex)
            {
                logReporteDian.REBA_CAMPO2_V2 = string.Empty;
            }
            try
            {
                logReporteDian.REBA_CAMPO3_DT = DateTime.Parse(item["REBA_CAMPO3_V2"].ToString());
            }
            catch (Exception ex)
            {
                logReporteDian.REBA_CAMPO3_DT = DateTime.UtcNow;
            }
            console.Cc("Adjuntando planilla : " + logReporteDian.REBA_LLAVE_V2 + " Emitida : " + logReporteDian.REBA_FECHA_DT);
            return(logReporteDian);
        }
示例#4
0
        private ICollection <DetLogBavaria> LeerInformacionDetLogBavaria(LogReporteBavaria itemLogReporteBavaria)
        {
            ICollection <DetLogBavaria> ICDetLogBavaria = new List <DetLogBavaria>();

            string[] _nParametros;
            object[] _vParametros;
            _nParametros = new string[3] {
                ":DEBA_LOGBAVARIA", ":DEBA_OFICINA", ":DEBA_LLAVE"
            };
            _vParametros = new object[3] {
                itemLogReporteBavaria.REBA_SECUENCIA_NB, itemLogReporteBavaria.REBA_OFICINA_NB, itemLogReporteBavaria.REBA_LLAVE_V2
            };
            Factory data = new Factory(Usuario, Password, Ambiente);

            try
            {
                var dt = data.getTable("getDetalleDetLogBavaria", _nParametros, _vParametros);
                if (dt.Rows.Count > 0)
                {
                    foreach (DataRow item in dt.Rows)
                    {
                        try
                        {
                            ICDetLogBavaria.Add(addInformacionDetLogBavaria(item));
                        }
                        catch (Exception exx)
                        {
                            ManejoError(exx, "ICInformacionDian.Add(addInformacionDian(item));");
                        }
                        break;
                    }
                }
            }
            catch (Exception ex)
            {
                ManejoError(ex, "var dtLogReporteDian = data.getTable(\"getLogReporteDian\", _nParametros, _vParametros);");
            }
            return(ICDetLogBavaria);
        }
示例#5
0
        private LogReporteBavaria addLogReporteBavaria(DataRow item)
        {
            LogReporteBavaria logReporteBavaria = new LogReporteBavaria();

            logReporteBavaria.REBA_SECUENCIA_NB   = double.Parse(item["REBA_SECUENCIA_NB"].ToString());
            logReporteBavaria.REBA_OFICINA_NB     = int.Parse(item["REBA_OFICINA_NB"].ToString());
            logReporteBavaria.REBA_TRANSACCION_NB = int.Parse(item["REBA_TRANSACCION_NB"].ToString());
            logReporteBavaria.REBA_LLAVE_V2       = item["REBA_LLAVE_V2"].ToString();
            logReporteBavaria.REBA_FECHA_DT       = DateTime.Parse(item["REBA_FECHA_DT"].ToString());
            logReporteBavaria.REBA_ESTADO_V2      = item["REBA_ESTADO_V2"].ToString();
            try
            {
                logReporteBavaria.REBA_CAMPO1_NB = double.Parse(item["REBA_CAMPO1_NB"].ToString());
            }
            catch (Exception ex)
            {
                logReporteBavaria.REBA_CAMPO1_NB = 0;
            }
            try
            {
                logReporteBavaria.REBA_CAMPO2_V2 = item["REBA_CAMPO2_V2"].ToString();
            }
            catch (Exception ex)
            {
                logReporteBavaria.REBA_CAMPO2_V2 = string.Empty;
            }
            try
            {
                logReporteBavaria.REBA_CAMPO3_DT = DateTime.Parse(item["REBA_CAMPO3_DT"].ToString());
            }
            catch (Exception ex)
            {
                logReporteBavaria.REBA_CAMPO3_DT = DateTime.UtcNow;
            }

            return(logReporteBavaria);
        }
示例#6
0
        private void actualizarRegistro(ConsultaInfoBavaria iCConsultaInfoBavaria, XmlDocument insumoXML, XmlDocument soapReturn, LogReporteBavaria logReporteBavaria, double success, string estado)
        {
            console.Cgreen();
            switch (estado)
            {
            case "R":
            {
                using (Factory data = new Factory(Usuario, Password, Ambiente))
                {
                    console.Ih("    !! Insertando Registro en la Tabla Det_log_Bavaria         ");
                    string[] _nParametros;
                    object[] _vParametros;
                    //:filename,:filedata,:companyid,:accountid,:status,:transactionid,:xmlfactura,:soapenviado,:soaprespuesta
                    _nParametros = new string[7] {
                        ":logbavaria",
                        ":oficina",
                        ":llave",
                        ":numacepta",
                        ":estado",
                        ":Bavariasoapenviado",
                        ":Bavariasoaprecibido"
                    };
                    _vParametros = new object[7] {
                        logReporteBavaria.REBA_SECUENCIA_NB,
                        logReporteBavaria.REBA_OFICINA_NB,
                        logReporteBavaria.REBA_LLAVE_V2,
                        -1,
                        "R",
                        insumoXML.InnerXml,
                        soapReturn.InnerXml
                    };
                    console.CRed();
                    console.Ih("Registro Rechazado ");
                    //console.Cgreen();
                    console.Ih(" Insertando registro en la tabla DET_LOG_BAVARIA. ");
                    //System.Threading.Thread.Sleep(1000);
                    data.executeCommand("InsertDetLogBavaria", _nParametros, _vParametros);
                }
                using (Factory data = new Factory(Usuario, Password, Ambiente))
                {
                    console.Ih("    !! Insertando Registro en la Tabla Det_log_Bavaria         ");
                    string[] _nParametros;
                    object[] _vParametros;
                    //:filename,:filedata,:companyid,:accountid,:status,:transactionid,:xmlfactura,:soapenviado,:soaprespuesta
                    _nParametros = new string[3] {
                        ":REBA_ESTADO_V2", ":REBA_SECUENCIA_NB", ":REBA_OFICINA_NB"
                    };
                    _vParametros = new object[3] {
                        GetEstado(soapReturn, logReporteBavaria.REBA_LLAVE_V2), logReporteBavaria.REBA_SECUENCIA_NB, logReporteBavaria.REBA_OFICINA_NB
                    };
                    console.Ih(" Actualizando el registro en la tabla LOG_REPORTE_BAVARIA. ");
                    System.Threading.Thread.Sleep(1000);
                    data.executeCommand("UpdateLogReporteBavaria", _nParametros, _vParametros);
                }


                break;
            }

            case "E":
            {
                using (Factory data = new Factory(Usuario, Password, Ambiente))
                {
                    console.Ih("    !! Insertando Registro en la Tabla Det_log_Bavaria         ");
                    string[] _nParametros;
                    object[] _vParametros;
                    //:filename,:filedata,:companyid,:accountid,:status,:transactionid,:xmlfactura,:soapenviado,:soaprespuesta
                    _nParametros = new string[7] {
                        ":logbavaria",
                        ":oficina",
                        ":llave",
                        ":numacepta",
                        ":estado",
                        ":Bavariasoapenviado",
                        ":Bavariasoaprecibido"
                    };
                    _vParametros = new object[7] {
                        logReporteBavaria.REBA_SECUENCIA_NB,
                        logReporteBavaria.REBA_OFICINA_NB,
                        logReporteBavaria.REBA_LLAVE_V2,
                        GetNumAceptacion(soapReturn, logReporteBavaria.REBA_LLAVE_V2),
                        GetEstado(soapReturn, logReporteBavaria.REBA_LLAVE_V2),
                        insumoXML.InnerXml,
                        soapReturn.InnerXml
                    };
                    console.Cblue();
                    console.Ih("Numero de aprobacion ==> " + GetNumAceptacion(soapReturn, logReporteBavaria.REBA_LLAVE_V2));
                    console.Cgreen();
                    console.Ih(" Insertando registro en la tabla DET_LOG_BAVARIA. ");
                    //System.Threading.Thread.Sleep(1000);
                    data.executeCommand("InsertDetLogBavaria", _nParametros, _vParametros);
                }
                using (Factory data = new Factory(Usuario, Password, Ambiente))
                {
                    console.Ih("    !! Insertando Registro en la Tabla Det_log_Bavaria         ");
                    string[] _nParametros;
                    object[] _vParametros;
                    //:filename,:filedata,:companyid,:accountid,:status,:transactionid,:xmlfactura,:soapenviado,:soaprespuesta
                    _nParametros = new string[3] {
                        ":REBA_ESTADO_V2", ":REBA_SECUENCIA_NB", ":REBA_OFICINA_NB"
                    };
                    _vParametros = new object[3] {
                        GetEstado(soapReturn, logReporteBavaria.REBA_LLAVE_V2), logReporteBavaria.REBA_SECUENCIA_NB, logReporteBavaria.REBA_OFICINA_NB
                    };
                    console.Ih(" Actualizando el registro en la tabla LOG_REPORTE_BAVARIA. ");
                    System.Threading.Thread.Sleep(1000);
                    data.executeCommand("UpdateLogReporteBavaria", _nParametros, _vParametros);
                }

                break;
            }

            default:
                break;
            }
        }
示例#7
0
        private void HttpWebProcesarReturn(ConsultaInfoBavaria iCConsultaInfoBavaria, XmlDocument insumoXML, XmlDocument soapReturn, LogReporteBavaria logReporteBavaria)
        {
            XmlNodeList elemList = soapReturn.GetElementsByTagName("ns1:nuevo_manifiestoResponse");//ns1:
            double      success  = -1;

            for (int i = 0; i < elemList.Count; i++)
            {
                XmlNode xmlnode = elemList.Item(0);
                string  retorno = xmlnode.InnerText;
                if (retorno.Contains("error\":\"\""))
                {
                    console.Cgreen();
                    console.Ih(" Planilla Reportada con Exito ");
                    System.Threading.Thread.Sleep(2000);
                    actualizarRegistro(iCConsultaInfoBavaria, insumoXML, soapReturn, logReporteBavaria, success, "E");
                    break;
                }
                else
                {
                    console.CRed();
                    console.Ih(" Error al reportar la planilla ");
                    actualizarRegistro(iCConsultaInfoBavaria, insumoXML, soapReturn, logReporteBavaria, success, "R");
                    System.Threading.Thread.Sleep(1000);
                }
            }
        }
示例#8
0
        private void procesarDespachoBavaria(ICollection <ConsultaInfoBavaria> iCConsultaInfoBavaria, LogReporteBavaria logReporteBavaria)
        {
            string ruta = @"c:\transer\ws\Bavaria\" + logReporteBavaria.REBA_LLAVE_V2 + @"\" + logReporteBavaria.REBA_LLAVE_V2;

            foreach (var item in iCConsultaInfoBavaria)
            {
                console.Ih("=> Procesando planilla : " + item.VIAJ_NOPLANILLA_V2);
                string InsumoXmlBavaria = crearXMLBavaria(item);
                try
                {
                    console.Ih(" Creando Insumo XML Bavaria");
                    //System.Threading.Thread.Sleep(4000);
                    XmlDocument insumoXML = CreateSoapEnvelopeBavaria(InsumoXmlBavaria);
                    insumoXML.Save(ruta + "_Insumo.xml");
                    console.Ih(" Enviando Insumo XML ");
                    //System.Threading.Thread.Sleep(4000);
                    string      HttpWebReturn = httpsSendXmlDocument(insumoXML.InnerXml);
                    XmlDocument soapReturn    = CreateSoapEnvelopeBavaria(HttpWebReturn);
                    soapReturn.Save(ruta + "_Respuesta.xml");
                    console.Ih(" Procesando Respuesta ");
                    //System.Threading.Thread.Sleep(4000);
                    HttpWebProcesarReturn(item, insumoXML, soapReturn, logReporteBavaria);
                }
                catch (Exception ex)
                {
                    using (StreamWriter writer = new StreamWriter(ruta, true))
                    {
                        writer.WriteLine("Se presento un Error al Momento de generar el Insumo XML");
                        writer.WriteLine("A continuacion se describe el detalle del error. ");
                        writer.WriteLine(ex.Message);
                    }
                }
            }
        }