public void LlenarDatosApi()
        {
            string             jsonRespuesta    = ApiControlador.ApiPost("/transporte/api/windows/despacho/rndcpendientecumplir", null);
            List <ApiDespacho> apiDespachoLista = ser.Deserialize <List <ApiDespacho> >(jsonRespuesta);

            DgDespachos.DataSource = apiDespachoLista;
        }
Beispiel #2
0
 private void TxtNombreDestinatario_KeyDown(object sender, KeyEventArgs e)
 {
     if (e.KeyCode.ToString() == "F2")
     {
         General.CodigoCliente = codigoCliente;
         FrmBuscarDestinatario frmBuscarDestinatario = new FrmBuscarDestinatario();
         frmBuscarDestinatario.ShowDialog();
         if (frmBuscarDestinatario.DialogResult == DialogResult.OK)
         {
             string          parametrosJson  = "{\"codigo\":\"" + General.CodigoDestinatario + "\"}";
             string          jsonRespuesta   = ApiControlador.ApiPost("/transporte/api/windows/destinatario/detalle", parametrosJson);
             ApiDestinatario apiDestinatario = ser.Deserialize <ApiDestinatario>(jsonRespuesta);
             if (apiDestinatario.error == null)
             {
                 TxtCodigoDestinatario.Text    = apiDestinatario.codigoDestinatarioPk;
                 TxtNombreDestinatario.Text    = apiDestinatario.nombreCorto;
                 TxtDireccionDestinatario.Text = apiDestinatario.direccion;
                 TxtTelefonoDestinatario.Text  = apiDestinatario.telefono;
                 TxtCodigoCiudadDestino.Text   = apiDestinatario.codigoCiudadFk;
             }
             else
             {
                 MessageBox.Show("No existe el destinatario");
             }
         }
     }
 }
Beispiel #3
0
        public void LlenarDatosApi()
        {
            string parametrosJson = "{\"nombre\":\"" + TxtNombre.Text + "\",\"cliente\":\"" + General.CodigoCliente + "\"}";
            string jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/condicion/buscar", parametrosJson);
            List <ApiCondicion> apiCondicionLista = ser.Deserialize <List <ApiCondicion> >(jsonRespuesta);

            DgCondiciones.DataSource = apiCondicionLista;
        }
Beispiel #4
0
        public void LlenarDatosApi()
        {
            string parametrosJson = "{\"nombre\":\"" + TxtNombre.Text + "\",\"cliente\":\"" + General.CodigoCliente + "\",\"todos\":\"" + ChkTodosClientes.Checked + "\"}";
            string jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/destinatario/buscar", parametrosJson);
            List <ApiDestinatario> apiDestinatarioLista = ser.Deserialize <List <ApiDestinatario> >(jsonRespuesta);

            DgDestinatarios.DataSource = apiDestinatarioLista;
        }
Beispiel #5
0
        public void LlenarDatosApi()
        {
            string           parametrosJson = "{\"codigoGuia\":\"" + General.CodigoGuia + "\"}";
            string           jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/recibo/detalle", parametrosJson);
            List <ApiRecibo> apiRecibo      = ser.Deserialize <List <ApiRecibo> >(jsonRespuesta);

            DgRecibos.DataSource = apiRecibo;
        }
Beispiel #6
0
        public void LlenarDatosApi()
        {
            string           parametrosJson = "{\"nombre\":\"" + TxtNombre.Text + "\"}";
            string           jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/ciudad/buscar", parametrosJson);
            List <ApiCiudad> apiCiudadLista = ser.Deserialize <List <ApiCiudad> >(jsonRespuesta);

            DgCiudades.DataSource = apiCiudadLista;
        }
Beispiel #7
0
        private void CargarProducto()
        {
            string             jsonRespuesta    = ApiControlador.ApiPost("/transporte/api/windows/producto/lista", null);
            List <ApiProducto> apiProductoLista = ser.Deserialize <List <ApiProducto> >(jsonRespuesta);

            CboProducto.ValueMember   = "codigoProductoPk";
            CboProducto.DisplayMember = "nombre";
            CboProducto.DataSource    = apiProductoLista;
        }
        private void BtnDescartar_Click(object sender, EventArgs e)
        {
            string            codigo  = DgDespachos.Rows[DgDespachos.CurrentRow.Index].Cells[0].Value.ToString();
            RespuestaRndc     retorno = new RespuestaRndc();
            BPMServicesClient client  = new BPMServicesClient();

            ApiControlador.ApiPost("/transporte/api/windows/despacho/rndcdescartarcumplido", "{\"codigoDespacho\":\"" + codigo + "\"}");
            LlenarDatosApi();
        }
Beispiel #9
0
        private void CargarTipo()
        {
            string             jsonRespuesta    = ApiControlador.ApiPost("/transporte/api/windows/guiatipo/lista", null);
            List <ApiGuiaTipo> apiGuiaTipoLista = ser.Deserialize <List <ApiGuiaTipo> >(jsonRespuesta);

            CboTipo.ValueMember   = "codigoGuiaTipoPk";
            CboTipo.DisplayMember = "nombre";
            CboTipo.DataSource    = apiGuiaTipoLista;
        }
Beispiel #10
0
        private void TxtCodigoCiudadDestino_Validated(object sender, EventArgs e)
        {
            string    codigoOrigen   = TxtCodigoCiudadOrigen.Text;
            string    codigoDestino  = TxtCodigoCiudadDestino.Text;
            string    parametrosJson = "{\"codigo\":\"" + codigoDestino + "\"}";
            string    jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/ciudad/detalle", parametrosJson);
            ApiCiudad apiCiudad      = ser.Deserialize <ApiCiudad>(jsonRespuesta);

            if (apiCiudad.error == null)
            {
                TxtNombreCiudadDestino.Text = apiCiudad.nombre;
                if (codigoPrecio != 0 && TxtCodigoCiudadOrigen.Text != "" && TxtCodigoCiudadDestino.Text != "")
                {
                    parametrosJson = "{\"precio\":\"" + codigoPrecio + "\", \"origen\":\"" + TxtCodigoCiudadOrigen.Text + "\", \"destino\":\"" + TxtCodigoCiudadDestino.Text + "\", \"zona\":\"" + "\", \"producto\":\"" + CboProducto.SelectedValue.ToString() + "\"}";
                    jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/preciodetalle/detalleproducto", parametrosJson);
                    ApiPrecioDetalle apiPrecioDetalle = ser.Deserialize <ApiPrecioDetalle>(jsonRespuesta);
                    if (apiPrecioDetalle.error == null)
                    {
                        precioPeso      = apiPrecioDetalle.vrPeso;
                        codigoCobertura = apiPrecioDetalle.codigoCoberturaFk;

                        parametrosJson = "{\"codigoCliente\":\"" + codigoCliente + "\",\"origen\":\"" + TxtCodigoCiudadOrigen.Text + "\", \"destino\":\"" + TxtCodigoCiudadDestino.Text + "\", \"codigoZona\":\"" + "\", \"codigoCobertura\":\"" + codigoCobertura + "\"}";
                        jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/condicionflete/liquidar", parametrosJson);
                        ApiCondicionFlete apiCondicionFlete = ser.Deserialize <ApiCondicionFlete>(jsonRespuesta);
                        if (apiCondicionFlete.error == null)
                        {
                            descuentoPeso         = apiCondicionFlete.descuentoPeso;
                            pesoMinimo            = apiCondicionFlete.pesoMinimo;
                            pesoMinimoGuia        = apiCondicionFlete.pesoMinimoGuia;
                            TxtDescuentoPeso.Text = apiCondicionFlete.descuentoPeso.ToString();
                        }

                        parametrosJson = "{\"codigoCliente\":\"" + codigoCliente + "\",\"origen\":\"" + TxtCodigoCiudadOrigen.Text + "\", \"destino\":\"" + TxtCodigoCiudadDestino.Text + "\", \"codigoZona\":\"" + "\", \"codigoCobertura\":\"" + codigoCobertura + "\"}";
                        jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/condicionmanejo/liquidar", parametrosJson);
                        ApiCondicionManejo apiCondicionManejo = ser.Deserialize <ApiCondicionManejo>(jsonRespuesta);
                        if (apiCondicionManejo.error == null)
                        {
                            porcentajeManejo             = apiCondicionManejo.porcentaje;
                            manejoMinimoUnidad           = apiCondicionManejo.minimoUnidad;
                            manejoMinimoDespacho         = apiCondicionManejo.minimoDespacho;
                            TxtPorcentajeManejo.Text     = apiCondicionManejo.porcentaje.ToString();
                            TxtManejoMinimoUnidad.Text   = apiCondicionManejo.minimoUnidad.ToString();
                            TxtManejoMinimoDespacho.Text = apiCondicionManejo.minimoDespacho.ToString();
                        }
                    }
                    else
                    {
                        MessageBox.Show(this, "No existe precio para este producto con esta condicion y este destino", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                else
                {
                    MessageBox.Show("Debe seleccionar una condicion comercial, origen y destino del servicio");
                }
            }
        }
Beispiel #11
0
        private void TxtCodigoCiudadOrigen_Validated(object sender, EventArgs e)
        {
            string    parametrosJson = "{\"codigo\":\"" + TxtCodigoCiudadOrigen.Text + "\"}";
            string    jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/ciudad/detalle", parametrosJson);
            ApiCiudad apiCiudad      = ser.Deserialize <ApiCiudad>(jsonRespuesta);

            if (apiCiudad.error == null)
            {
                txtNombreCiudadOrigen.Text = apiCiudad.nombre;
            }
        }
        private void FrmClienteNuevo_Load(object sender, EventArgs e)
        {
            string jsonRespuesta = ApiControlador.ApiPost("/general/api/windows/identificacion/lista", null);
            List <ApiIdentificacion> apiIdentificacionLista = ser.Deserialize <List <ApiIdentificacion> >(jsonRespuesta);

            CboIdentificacion.ValueMember   = "codigoIdentificacionPk";
            CboIdentificacion.DisplayMember = "nombre";
            CboIdentificacion.DataSource    = apiIdentificacionLista;

            jsonRespuesta = ApiControlador.ApiPost("/general/api/windows/ciudad/lista", null);
            List <ApiCiudad> apiCiudadLista = ser.Deserialize <List <ApiCiudad> >(jsonRespuesta);

            CboCiudad.ValueMember   = "codigoCiudadPk";
            CboCiudad.DisplayMember = "nombre";
            CboCiudad.DataSource    = apiCiudadLista;

            jsonRespuesta = ApiControlador.ApiPost("/general/api/windows/asesor/lista", null);
            List <ApiAsesor> apiAsesorLista = ser.Deserialize <List <ApiAsesor> >(jsonRespuesta);

            CboAsesor.ValueMember   = "codigoAsesorPk";
            CboAsesor.DisplayMember = "nombre";
            CboAsesor.DataSource    = apiAsesorLista;

            List <TipoPersona> listaTipoPersona = new List <TipoPersona>();

            listaTipoPersona.Add(new TipoPersona()
            {
                codigoTipoPersonaPk = "J", nombre = "JURIDICA"
            });
            listaTipoPersona.Add(new TipoPersona()
            {
                codigoTipoPersonaPk = "N", nombre = "NATURAL"
            });
            CboTipoPersona.DataSource    = listaTipoPersona;
            CboTipoPersona.ValueMember   = "codigoTipoPersonaPk";
            CboTipoPersona.DisplayMember = "nombre";
            CboTipoPersona.SelectedIndex = 0;

            List <Regimen> listaRegimen = new List <Regimen>();

            listaRegimen.Add(new Regimen()
            {
                codigoRegimenPk = "O", nombre = "ORDINARIO COMUN"
            });
            listaRegimen.Add(new Regimen()
            {
                codigoRegimenPk = "S", nombre = "SIMPLE"
            });
            CboRegimen.DataSource    = listaRegimen;
            CboRegimen.ValueMember   = "codigoRegimenPk";
            CboRegimen.DisplayMember = "nombre";
            CboRegimen.SelectedIndex = 0;
        }
Beispiel #13
0
        private void FrmVisor_Load(object sender, EventArgs e)
        {
            if (General.Formato.tipo == "Guia")
            {
                string parametrosJson = "{\"codigoDesde\":\"" + General.Formato.codigoDesde + "\", \"codigoHasta\":\"" + General.Formato.codigoHasta + "\"}";
                string jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/guia/imprimir", parametrosJson);
                List <ApiGuiaImprimir> apiGuiaLista = ser.Deserialize <List <ApiGuiaImprimir> >(jsonRespuesta);
                string ruta = cromo.Properties.Settings.Default.rutaReportes;
                ruta = ruta + @"Transporte\Guia" + General.Formato.codigoFormato + ".rdlc";
                if (File.Exists(ruta))
                {
                    this.reportViewer1.LocalReport.ReportPath = ruta;
                    ReportParameter param = new ReportParameter("rutaImagen", @"file:\" + Directory.GetCurrentDirectory() + @"\logo.jpg", true);
                    this.reportViewer1.LocalReport.SetParameters(param);
                    ReportDataSource rds1 = new ReportDataSource("GuiaImprimir", apiGuiaLista);
                    this.reportViewer1.LocalReport.DataSources.Clear();
                    this.reportViewer1.LocalReport.DataSources.Add(rds1);
                    this.reportViewer1.RefreshReport();
                }
                else
                {
                    MessageBox.Show(this, "No se encontro el reporte, verifique la ruta de reportes en configuracion: " + ruta, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }

            if (General.Formato.tipo == "Recibo")
            {
                string parametrosJson = "{\"codigoGuia\":\"" + General.CodigoGuia + "\"}";
                string jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/recibo/imprimir", parametrosJson);
                List <ApiReciboImprimir> apiReciboImprimir = ser.Deserialize <List <ApiReciboImprimir> >(jsonRespuesta);
                string ruta = cromo.Properties.Settings.Default.rutaReportes;
                ruta = ruta + @"Transporte\Recibo" + General.Formato.codigoFormato + ".rdlc";
                if (File.Exists(ruta))
                {
                    this.reportViewer1.LocalReport.ReportPath = ruta;
                    ReportParameter param = new ReportParameter("rutaImagen", @"file:\" + Directory.GetCurrentDirectory() + @"\logo.jpg", true);
                    this.reportViewer1.LocalReport.SetParameters(param);
                    ReportDataSource rds1 = new ReportDataSource("ReciboImprimir", apiReciboImprimir);
                    this.reportViewer1.LocalReport.DataSources.Clear();
                    this.reportViewer1.LocalReport.DataSources.Add(rds1);
                    this.reportViewer1.RefreshReport();
                }
                else
                {
                    MessageBox.Show(this, "No se encontro el reporte, verifique la ruta de reportes en configuracion: " + ruta, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
        private void FrmDestinatarioNuevo_Load(object sender, EventArgs e)
        {
            string jsonRespuesta = ApiControlador.ApiPost("/general/api/windows/identificacion/lista", null);
            List <ApiIdentificacion> apiIdentificacionLista = ser.Deserialize <List <ApiIdentificacion> >(jsonRespuesta);

            CboIdentificacion.ValueMember   = "codigoIdentificacionPk";
            CboIdentificacion.DisplayMember = "nombre";
            CboIdentificacion.DataSource    = apiIdentificacionLista;

            jsonRespuesta = ApiControlador.ApiPost("/transporte/api/windows/ciudad/lista", null);
            List <ApiCiudad> apiCiudadLista = ser.Deserialize <List <ApiCiudad> >(jsonRespuesta);

            CboCiudad.ValueMember   = "codigoCiudadPk";
            CboCiudad.DisplayMember = "nombre";
            CboCiudad.DataSource    = apiCiudadLista;
        }
Beispiel #15
0
        private void FrmDescuento_Load(object sender, EventArgs e)
        {
            TxtDescuento.Text = General.Descuento.ToString();
            string parametrosJson = "{\"usuario\":\"" + General.UsuarioActivo + "\"}";
            string jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/usuario/configuracion", parametrosJson);
            ApiUsuarioConfigurcion apiUsuarioConfiguracion = ser.Deserialize <ApiUsuarioConfigurcion>(jsonRespuesta);

            if (apiUsuarioConfiguracion.error == false)
            {
                descuentoPesoMaximo = apiUsuarioConfiguracion.descuentoPesoMaximo;
            }
            else
            {
                MessageBox.Show(this, "El usuario no tiene configuracion para modificar parametros de descuento", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                Close();
            }
        }
        private void BtnGuardar_Click(object sender, EventArgs e)
        {
            if (ValidarGuardar())
            {
                JavaScriptSerializer ser = new JavaScriptSerializer();

                ApiCliente apiCliente = new ApiCliente();
                apiCliente.codigoIdentificacionFk = CboIdentificacion.SelectedValue.ToString();
                apiCliente.numeroIdentificacion   = TxtNumeroIdentificacion.Text;
                apiCliente.codigoCiudadFk         = CboCiudad.SelectedValue.ToString();
                apiCliente.codigoAsesorFk         = CboAsesor.SelectedValue.ToString();
                apiCliente.nombreCorto            = TxtNombreCorto.Text;
                apiCliente.nombreExtendido        = TxtNombreExtendido.Text;
                apiCliente.nombre1             = TxtNombre1.Text;
                apiCliente.nombre2             = TxtNombre2.Text;
                apiCliente.apellido1           = TxtApellido1.Text;
                apiCliente.apellido2           = TxtApellido2.Text;
                apiCliente.direccion           = TxtDireccion.Text;
                apiCliente.telefono            = TxtTelefono.Text;
                apiCliente.correo              = TxtCorreo.Text;
                apiCliente.codigoCondicionFk   = General.CodigoCondicionGeneral.ToString();
                apiCliente.codigoOperacionFk   = cromo.Properties.Settings.Default.centroOperacion;
                apiCliente.codigoTipoPersonaFk = CboTipoPersona.SelectedValue.ToString();
                apiCliente.codigoRegimenFk     = CboRegimen.SelectedValue.ToString();
                apiCliente.codigoPostal        = TxtCodigoPostal.Text;

                string parametrosJson = ser.Serialize(apiCliente);
                string jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/cliente/nuevo", parametrosJson);
                ApiClienteRespuesta apiClienteRespuesta = ser.Deserialize <ApiClienteRespuesta>(jsonRespuesta);
                if (apiClienteRespuesta.error == null)
                {
                    MessageBox.Show(this, "El cliente se guardo con exito ", "Informacion", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    General.CodigoCliente = apiClienteRespuesta.codigoTerceroPk;
                    DialogResult          = DialogResult.OK;
                }
                else
                {
                    MessageBox.Show(this, "Ocurrio un error al guardar el cliente: " + apiClienteRespuesta.error, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Beispiel #17
0
        private void FrmManejo_Load(object sender, EventArgs e)
        {
            TxtManejo.Text              = General.Manejo.ToString();
            TxtManejoMinimoUnidad.Text  = General.ManejoMinimoUnidad.ToString();
            TxtManejoMinioDespacho.Text = General.ManejoMinimoDespacho.ToString();
            string parametrosJson = "{\"usuario\":\"" + General.UsuarioActivo + "\"}";
            string jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/usuario/configuracion", parametrosJson);
            ApiUsuarioConfigurcion apiUsuarioConfiguracion = ser.Deserialize <ApiUsuarioConfigurcion>(jsonRespuesta);

            if (apiUsuarioConfiguracion.error == false)
            {
                porcentajeManejoMinimoUsuario     = apiUsuarioConfiguracion.porcentajeManejoMinimo;
                manejoMinimoUnidadMinimoUsuario   = apiUsuarioConfiguracion.manejoMinimoUnidad;
                manejoMinimoDespachoMinimoUsuario = apiUsuarioConfiguracion.manejoMinimoDespacho;
            }
            else
            {
                MessageBox.Show(this, "El usuario no tiene configuracion para modificar parametros de manejo", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                Close();
            }
        }
        private void BtnGuardar_Click(object sender, EventArgs e)
        {
            if (ValidarGuardar())
            {
                JavaScriptSerializer ser = new JavaScriptSerializer();

                ApiDestinatario apiDestinatario = new ApiDestinatario();
                apiDestinatario.codigoIdentificacionFk = CboIdentificacion.SelectedValue.ToString();
                apiDestinatario.numeroIdentificacion   = TxtNumeroIdentificacion.Text;
                apiDestinatario.codigoCiudadFk         = CboCiudad.SelectedValue.ToString();
                apiDestinatario.nombreCorto            = TxtNombreCorto.Text;
                apiDestinatario.nombre1   = TxtNombre1.Text;
                apiDestinatario.nombre2   = TxtNombre2.Text;
                apiDestinatario.apellido1 = TxtApellido1.Text;
                apiDestinatario.apellido2 = TxtApellido2.Text;
                apiDestinatario.direccion = TxtDireccion.Text;
                apiDestinatario.telefono  = TxtTelefono.Text;
                apiDestinatario.correo    = TxtCorreo.Text;
                if (General.CodigoCliente != "")
                {
                    apiDestinatario.codigoTerceroFk = General.CodigoCliente;
                }

                string parametrosJson = ser.Serialize(apiDestinatario);
                string jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/destinatario/nuevo", parametrosJson);
                ApiDestinatarioRespuesta apiDestinatarioRespuesta = ser.Deserialize <ApiDestinatarioRespuesta>(jsonRespuesta);
                if (apiDestinatarioRespuesta.error == null)
                {
                    MessageBox.Show(this, "El destinatario se guardo con exito ", "Informacion", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    General.CodigoDestinatario = apiDestinatarioRespuesta.codigoDestinatarioPk;
                    General.NombreDestinatario = TxtNombreCorto.Text;
                    DialogResult = DialogResult.OK;
                }
                else
                {
                    MessageBox.Show(this, "Ocurrio un error al guardar el destinatario: " + apiDestinatarioRespuesta.error, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Beispiel #19
0
        private void BtnAgregar_Click(object sender, EventArgs e)
        {
            string  parametrosJson = "{\"codigoGuiaPk\":\"" + General.CodigoGuia + "\"}";
            string  jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/guia/detalle", parametrosJson);
            ApiGuia apiGuia        = ser.Deserialize <ApiGuia>(jsonRespuesta);

            if (apiGuia.error == null)
            {
                if (TxtFlete.Text == "")
                {
                    TxtFlete.Text = "0";
                }
                if (TxtManejo.Text == "")
                {
                    TxtManejo.Text = "0";
                }
                double    total     = Convert.ToDouble(TxtFlete.Text) + Convert.ToDouble(TxtManejo.Text);
                ApiRecibo apiRecibo = new ApiRecibo();
                apiRecibo.codigoGuiaFk      = General.CodigoGuia.ToString();
                apiRecibo.codigoTerceroFk   = apiGuia.codigoTerceroFk;
                apiRecibo.codigoOperacionFk = apiGuia.codigoOperacionIngresoFk;
                apiRecibo.vrFlete           = Convert.ToDouble(TxtFlete.Text);
                apiRecibo.vrManejo          = Convert.ToDouble(TxtManejo.Text);
                apiRecibo.vrTotal           = total;
                parametrosJson = ser.Serialize(apiRecibo);
                jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/recibo/nuevo", parametrosJson);
                ApiRecibo apiReciboRespuesta = ser.Deserialize <ApiRecibo>(jsonRespuesta);
                if (apiReciboRespuesta.error != null)
                {
                    MessageBox.Show(this, "Ocurrio un error al guardar el recibo: " + apiReciboRespuesta.error, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }

                LlenarDatosApi();
                TxtFlete.Text  = "0";
                TxtManejo.Text = "0";
                TxtFlete.Focus();
            }
        }
Beispiel #20
0
 private void TxtCodigoCondicion_Validated(object sender, EventArgs e)
 {
     if (TxtCodigoCondicion.Text != "")
     {
         string       parametrosJson = "{\"codigo\":\"" + TxtCodigoCondicion.Text + "\"}";
         string       jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/condicion/detalle", parametrosJson);
         ApiCondicion apiCondicion   = ser.Deserialize <ApiCondicion>(jsonRespuesta);
         if (apiCondicion.error == null)
         {
             txtNombreCondicion.Text = apiCondicion.nombre;
             pesoMinimo                   = apiCondicion.pesoMinimo;
             porcentajeManejo             = apiCondicion.porcentajeManejo;
             manejoMinimoUnidad           = apiCondicion.manejoMinimoUnidad;
             manejoMinimoDespacho         = apiCondicion.manejoMinimoDespacho;
             descuentoPeso                = apiCondicion.descuentoPeso;
             TxtDescuentoPeso.Text        = apiCondicion.descuentoPeso.ToString();
             TxtPorcentajeManejo.Text     = apiCondicion.porcentajeManejo.ToString();
             TxtManejoMinimoUnidad.Text   = apiCondicion.manejoMinimoUnidad.ToString();
             TxtManejoMinimoDespacho.Text = apiCondicion.manejoMinimoDespacho.ToString();
             codigoPrecio                 = apiCondicion.codigoPrecioFk;
         }
     }
 }
Beispiel #21
0
 private void FrmGuiaOperador_Load(object sender, EventArgs e)
 {
     bloquearFlete  = cromo.Properties.Settings.Default.bloquearFlete;
     bloquearManejo = cromo.Properties.Settings.Default.bloquearManejo;
     codigoCliente  = cromo.Properties.Settings.Default.codigoCliente;
     CargarTipo();
     CargarProducto();
     if (codigoCliente != "")
     {
         string     parametrosJson = "{\"codigo\":\"" + codigoCliente + "\"}";
         string     jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/cliente/detalle", parametrosJson);
         ApiCliente apiCliente     = ser.Deserialize <ApiCliente>(jsonRespuesta);
         if (apiCliente.error == null)
         {
             ultimaCondicion = apiCliente.codigoCondicionFk;
             pagoCredito     = apiCliente.guiaPagoCredito;
             pagoContado     = apiCliente.guiaPagoContado;
             pagoDestino     = apiCliente.guiaPagoDestino;
             pagoCortesia    = apiCliente.guiaPagoCortesia;
             pagoRecogida    = apiCliente.guiaPagoRecogida;
         }
     }
 }
Beispiel #22
0
        private void BtnCumplir_Click(object sender, EventArgs e)
        {
            string            codigo     = DgDespachos.Rows[DgDespachos.CurrentRow.Index].Cells[0].Value.ToString();
            bool              validacion = true;
            RespuestaRndc     retorno    = new RespuestaRndc();
            BPMServicesClient client     = new BPMServicesClient();
            //Buscamos los terceros de ese despacho para transmitirlos
            string           parametrosJson   = "{\"codigoDespacho\":\"" + codigo + "\"}";
            string           jsonRespuesta    = ApiControlador.ApiPost("/transporte/api/windows/despacho/rndccumplir", parametrosJson);
            ApiElementosRndc apiElementosRndc = ser.Deserialize <ApiElementosRndc>(jsonRespuesta);
            string           xmlGuia          = @"<?xml version='1.0' encoding='ISO-8859-1' ?>
                <root>
                    <acceso>
                            <username>" + apiElementosRndc.configuracion.usuarioRndc + @"</username>
                            <password>" + apiElementosRndc.configuracion.claveRndc + @"</password>
                    </acceso>
                    <solicitud>
                        <tipo>1</tipo>
                        <procesoid>5</procesoid>
                    </solicitud>
                    <variables>
                        <NUMNITEMPRESATRANSPORTE>" + apiElementosRndc.configuracion.empresaRndc + @"</NUMNITEMPRESATRANSPORTE>
                        <CONSECUTIVOREMESA>" + apiElementosRndc.despacho.numero + @"</CONSECUTIVOREMESA>
                        <NUMMANIFIESTOCARGA>" + apiElementosRndc.despacho.numero + @"</NUMMANIFIESTOCARGA>
                        <TIPOCUMPLIDOREMESA>C</TIPOCUMPLIDOREMESA>
                        <FECHALLEGADACARGUE>" + apiElementosRndc.despacho.fechaLlegadaCargue + @"</FECHALLEGADACARGUE>
                        <HORALLEGADACARGUEREMESA>" + apiElementosRndc.despacho.horaLlegadaCargue + @"</HORALLEGADACARGUEREMESA>
                        <FECHAENTRADACARGUE>" + apiElementosRndc.despacho.fechaEntradaCargue + @"</FECHAENTRADACARGUE>
                        <HORAENTRADACARGUEREMESA>" + apiElementosRndc.despacho.horaEntradaCargue + @"</HORAENTRADACARGUEREMESA>
                        <FECHASALIDACARGUE>" + apiElementosRndc.despacho.fechaSalidaCargue + @"</FECHASALIDACARGUE>
                        <HORASALIDACARGUEREMESA>" + apiElementosRndc.despacho.horaSalidaCargue + @"</HORASALIDACARGUEREMESA>
                                                                       
                        <FECHALLEGADADESCARGUE>" + apiElementosRndc.despacho.fechaLlegadaDescargue + @"</FECHALLEGADADESCARGUE>
                        <HORALLEGADADESCARGUECUMPLIDO>" + apiElementosRndc.despacho.horaLlegadaDescargue + @"</HORALLEGADADESCARGUECUMPLIDO>
                        <FECHAENTRADADESCARGUE>" + apiElementosRndc.despacho.fechaEntradaDescargue + @"</FECHAENTRADADESCARGUE>
                        <HORAENTRADADESCARGUECUMPLIDO>" + apiElementosRndc.despacho.horaEntradaDescargue + @"</HORAENTRADADESCARGUECUMPLIDO>
                        <FECHASALIDADESCARGUE>" + apiElementosRndc.despacho.fechaSalidaDescargue + @"</FECHASALIDADESCARGUE>
                        <HORASALIDADESCARGUECUMPLIDO>" + apiElementosRndc.despacho.horaSalidaDescargue + @"</HORASALIDADESCARGUECUMPLIDO>                                    
                        <CANTIDADENTREGADA>" + apiElementosRndc.despacho.pesoReal + @"</CANTIDADENTREGADA></variables>
                    </root>";

            AtenderMensajeRNDCRequest solicitudGuia = new AtenderMensajeRNDCRequest(xmlGuia);
            var           respuestaGuia             = client.AtenderMensajeRNDC(solicitudGuia);
            var           textXmlGuia    = respuestaGuia.@return;
            XmlSerializer serializerGuia = new XmlSerializer(typeof(RespuestaRndc));

            using (TextReader reader = new StringReader(textXmlGuia))
            {
                //de esta manera se deserializa
                retorno = (RespuestaRndc)serializerGuia.Deserialize(reader);
                if (retorno.ErrorMSG != null)
                {
                    string mensajeError = retorno.ErrorMSG.Substring(0, 9);
                    if (mensajeError != "DUPLICADO")
                    {
                        MessageBox.Show(this, "Guia " + apiElementosRndc.despacho.codigoDespachoPk + " " + retorno.ErrorMSG, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        validacion = false;
                    }
                }
            }

            if (validacion == true)
            {
                string xmlManifiesto = @"<?xml version='1.0' encoding='ISO-8859-1' ?>
                    <root>
                        <acceso>
                            <username>" + apiElementosRndc.configuracion.usuarioRndc + @"</username>
                            <password>" + apiElementosRndc.configuracion.claveRndc + @"</password>
                        </acceso >
                        <solicitud>
                            <tipo>1</tipo>
                            <procesoid>6</procesoid>
                        </solicitud>
                        <variables>
                            <NUMNITEMPRESATRANSPORTE>" + apiElementosRndc.configuracion.empresaRndc + @"</NUMNITEMPRESATRANSPORTE>
                            <NUMMANIFIESTOCARGA>" + apiElementosRndc.despacho.numero + @"</NUMMANIFIESTOCARGA>                    
                            <TIPOCUMPLIDOMANIFIESTO>C</TIPOCUMPLIDOMANIFIESTO>   
                            <FECHAENTREGADOCUMENTOS>" + apiElementosRndc.despacho.fechaEntrega + @"</FECHAENTREGADOCUMENTOS>
                            <VALORADICIONALHORASCARGUE>0</VALORADICIONALHORASCARGUE> 
                            <VALORSOBREANTICIPO>0</VALORSOBREANTICIPO>
                        </variables>
                    </root>";
                AtenderMensajeRNDCRequest solicitudManifiesto = new AtenderMensajeRNDCRequest(xmlManifiesto);
                var           respuestaManifiesto             = client.AtenderMensajeRNDC(solicitudManifiesto);
                var           textXmlManifiesto    = respuestaManifiesto.@return;
                XmlSerializer serializerManifiesto = new XmlSerializer(typeof(RespuestaRndc));
                using (TextReader reader = new StringReader(textXmlManifiesto))
                {
                    //de esta manera se deserializa
                    retorno = (RespuestaRndc)serializerManifiesto.Deserialize(reader);
                    if (retorno.ErrorMSG != null)
                    {
                        string mensajeError = retorno.ErrorMSG.Substring(0, 9);
                        if (mensajeError != "DUPLICADO")
                        {
                            MessageBox.Show(this, "Manifiesto cumplido " + apiElementosRndc.despacho.codigoDespachoPk + " " + retorno.ErrorMSG, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                        else
                        {
                            MessageBox.Show(this, "Manifinifiesto ya fue cumplido con anterioridad", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            ApiControlador.ApiPost("/transporte/api/windows/despacho/rndcasignarcumplido", "{\"codigoDespacho\":\"" + apiElementosRndc.despacho.codigoDespachoPk + "\"}");
                            LlenarDatosApi();
                        }
                    }
                    else
                    {
                        ApiControlador.ApiPost("/transporte/api/windows/despacho/rndcasignarcumplido", "{\"codigoDespacho\":\"" + apiElementosRndc.despacho.codigoDespachoPk + "\"}");
                        LlenarDatosApi();
                    }
                }
            }
        }
Beispiel #23
0
        private void BtnIngresar_Click(object sender, EventArgs e)
        {
            try
            {
                bool servidorManual = cromo.Properties.Settings.Default.servidorManual;

                if (TxtOperador.Text != "" || servidorManual)
                {
                    string parametrosJson;
                    string jsonRespuesta;
                    cromo.Properties.Settings.Default.operador = TxtOperador.Text;
                    cromo.Properties.Settings.Default.Save();

                    if (servidorManual)
                    {
                        General.UrlServicio = cromo.Properties.Settings.Default.rutaServidorManual;
                    }
                    else
                    {
                        parametrosJson = "{\"operador\":\"" + TxtOperador.Text + "\"}";
                        jsonRespuesta  = ApiControlador.ApiPostCesio("/api/windows/transporte/operador/validar", parametrosJson);
                        ApiOperador apiOperador = ser.Deserialize <ApiOperador>(jsonRespuesta);
                        if (apiOperador.error == null)
                        {
                            General.UrlServicio = apiOperador.urlServicio;
                        }
                        else
                        {
                            MessageBox.Show(this, "El operador no existe " + apiOperador.error, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }

                    if (General.UrlServicio != "")
                    {
                        //Validar logo
                        string logo = Directory.GetCurrentDirectory() + @"\logo.jpg";
                        if (!File.Exists(logo))
                        {
                            jsonRespuesta = ApiControlador.ApiPost("/transporte/api/windows/general/configuracion", "");
                            ApiConfiguracion apiConfiguracion = ser.Deserialize <ApiConfiguracion>(jsonRespuesta);
                            if (apiConfiguracion.error == null)
                            {
                                string base64 = apiConfiguracion.logo;
                                byte[] bytes  = Convert.FromBase64String(base64);
                                using (Image image = Image.FromStream(new MemoryStream(bytes)))
                                {
                                    image.Save(Directory.GetCurrentDirectory() + @"\logo.jpg", ImageFormat.Jpeg);  // Or Png
                                }
                            }
                        }

                        parametrosJson = "{\"usuario\":\"" + TxtUsuario.Text + "\",\"clave\":\"" + TxtContraseña.Text + "\"}";
                        jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/usuario/validar", parametrosJson);
                        ApiUsuario apiUsuario = ser.Deserialize <ApiUsuario>(jsonRespuesta);
                        if (apiUsuario.error == null)
                        {
                            if (ChkRecordar.Checked)
                            {
                                cromo.Properties.Settings.Default.usuario       = TxtUsuario.Text;
                                cromo.Properties.Settings.Default.clave         = TxtContraseña.Text;
                                cromo.Properties.Settings.Default.recordarClave = ChkRecordar.Checked;
                                cromo.Properties.Settings.Default.Save();
                            }
                            else
                            {
                                cromo.Properties.Settings.Default.usuario       = null;
                                cromo.Properties.Settings.Default.clave         = null;
                                cromo.Properties.Settings.Default.recordarClave = false;
                                cromo.Properties.Settings.Default.Save();
                            }
                            if (apiUsuario.versionBaseDatos <= 3)
                            {
                                parametrosJson = "{\"codigoOperacion\":\"" + cromo.Properties.Settings.Default.centroOperacion + "\"}";
                                jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/operacion/validar", parametrosJson);
                                ApiOperacion apiOperacion = ser.Deserialize <ApiOperacion>(jsonRespuesta);
                                if (apiOperacion.error == null)
                                {
                                    General.UsuarioActivo          = TxtUsuario.Text;
                                    General.NumeroUnicoGuia        = apiUsuario.numeroUnicoGuia;
                                    General.CodigoPrecioGeneral    = apiUsuario.codigoPrecioGeneral;
                                    General.CodigoCondicionGeneral = apiUsuario.codigoCondicionGeneral;
                                    General.CodigoFormatoGuia      = apiUsuario.codigoFormatoGuia;

                                    General.CodigoCiudadOrigenParametro = apiOperacion.codigoCiudadFk;
                                    General.CodigoOperacionIngreso      = apiOperacion.codigoOperacionPk;
                                    General.CodigoOperacionCargo        = apiOperacion.codigoOperacionCargoFk;

                                    General.RestringirGuiaNueva = apiUsuario.restringirGuiaNueva;

                                    DialogResult = DialogResult.OK;
                                    Close();
                                }
                                else
                                {
                                    MessageBox.Show(this, "Inconvenientes con la operacion " + apiOperacion.error, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                }
                            }
                            else
                            {
                                DialogResult resultado = MessageBox.Show(this, "La base de datos conectada require de una actualizacion de la aplicacion de escritorio desea descargar la actualizacion?",
                                                                         "Actualizacion requerida", MessageBoxButtons.YesNo,
                                                                         MessageBoxIcon.Question);
                                if (resultado == DialogResult.Yes)
                                {
                                    System.Diagnostics.Process.Start("https://github.com/wariox3/cromo_windows/tree/master/InstaladorCromo/Debug");
                                    Close();
                                }
                            }
                        }
                        else
                        {
                            MessageBox.Show(this, "Usuario o contraseña invalidos " + apiUsuario.error, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                    else
                    {
                        MessageBox.Show(this, "No se ha especificado una url para el servidor", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                else
                {
                    MessageBox.Show(this, "Debe especificar un operador o configurar uno manual.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    TxtOperador.Focus();
                }
            }
            catch (Exception error)
            {
                MessageBox.Show("Se produjo un error (" + error.Message + ")");
            }
        }
Beispiel #24
0
        public void Guardar()
        {
            if (ValidarGuardar())
            {
                JavaScriptSerializer ser   = new JavaScriptSerializer();
                string      parametrosJson = "{\"guiaTipo\":\"" + CboTipo.SelectedValue.ToString() + "\"}";
                string      jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/guiatipo/detalle", parametrosJson);
                ApiGuiaTipo apiGuiaTipo    = ser.Deserialize <ApiGuiaTipo>(jsonRespuesta);
                if (apiGuiaTipo.error == null)
                {
                    if (ValidarFormaPago(apiGuiaTipo.codigoFormaPago))
                    {
                        if (ValidarFlete(apiGuiaTipo.validarFlete, Convert.ToDouble(TxtFlete.Text)))
                        {
                            double cobro = 0;
                            if (apiGuiaTipo.generaCobro)
                            {
                                cobro = cobro + Convert.ToDouble(TxtFlete.Text) + Convert.ToDouble(TxtManejo.Text);
                            }

                            ApiGuia apiGuia = new ApiGuia();
                            apiGuia.codigoGuiaTipoFk         = CboTipo.SelectedValue.ToString();
                            apiGuia.codigoOperacionIngresoFk = TxtOperacionIngreso.Text;
                            apiGuia.codigoOperacionCargoFk   = TxtOperacionCargo.Text;
                            apiGuia.codigoTerceroFk          = codigoCliente;
                            apiGuia.codigoCondicionFk        = TxtCodigoCondicion.Text;
                            apiGuia.codigoCiudadOrigenFk     = TxtCodigoCiudadOrigen.Text;
                            apiGuia.codigoCiudadDestinoFk    = TxtCodigoCiudadDestino.Text;
                            //apiGuia.codigoRutaFk = TxtCodigoRuta.Text;
                            //apiGuia.codigoAsesorFk = TxtCodigoAsesor.Text;
                            apiGuia.codigoServicioFk = "PAQ";
                            apiGuia.codigoProductoFk = CboProducto.SelectedValue.ToString();
                            apiGuia.codigoEmpaqueFk  = "VARIOS";
                            apiGuia.documentoCliente = TxtDocumentoCliente.Text;
                            //apiGuia.relacionCliente = TxtRelacion.Text;
                            apiGuia.remitente             = TxtNombreRemitente.Text;
                            apiGuia.nombreRemitente       = TxtNombreRemitente.Text;
                            apiGuia.telefonoRemitente     = TxtTelefonoRemitente.Text;
                            apiGuia.direccionRemitente    = TxtDireccionRemitente.Text;
                            apiGuia.nombreDestinatario    = TxtNombreDestinatario.Text;
                            apiGuia.direccionDestinatario = TxtDireccionDestinatario.Text;
                            apiGuia.telefonoDestinatario  = TxtTelefonoDestinatario.Text;
                            apiGuia.pesoReal            = TxtPeso.Text;
                            apiGuia.pesoVolumen         = TxtVolumen.Text;
                            apiGuia.pesoFacturado       = TxtPesoFacturar.Text;
                            apiGuia.unidades            = TxtUnidades.Text;
                            apiGuia.vrRecaudo           = "0";
                            apiGuia.vrDeclara           = TxtDeclarado.Text;
                            apiGuia.vrFlete             = TxtFlete.Text;
                            apiGuia.vrManejo            = TxtManejo.Text;
                            apiGuia.vrCostoReexpedicion = "0";
                            apiGuia.vrCobroEntrega      = cobro.ToString();
                            apiGuia.usuario             = General.UsuarioActivo;
                            //apiGuia.empaqueReferencia = TxtReferenciaEmpaque.Text;
                            apiGuia.tipoLiquidacion = "K";
                            apiGuia.comentario      = TxtComentario.Text;
                            //apiGuia.mercanciaPeligrosa = ChkMercanciaPeligrosa.Checked;
                            apiGuia.contenidoVerificado = ChkContenidoVerificado.Checked;
                            //apiGuia.ordenRuta = TxtOrdenRuta.Text;
                            //apiGuia.codigoZonaFk = TxtCodigoZona.Text;
                            apiGuia.codigoDestinatarioFk = TxtCodigoDestinatario.Text;
                            parametrosJson = ser.Serialize(apiGuia);
                            jsonRespuesta  = ApiControlador.ApiPost("/transporte/api/windows/guia/nuevo", parametrosJson);
                            ApiGuiaRespuesta apiGuiaRespuesta = ser.Deserialize <ApiGuiaRespuesta>(jsonRespuesta);
                            if (apiGuiaRespuesta.error == null)
                            {
                                MessageBox.Show(this, "La guia se guardo con exito ", "Informacion", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                TxtCodigo.Text  = apiGuiaRespuesta.codigoGuiaPk;
                                ultimaCondicion = TxtCodigoCondicion.Text;
                                ultimoTipo      = CboTipo.SelectedValue.ToString();
                                ultimoProducto  = CboProducto.SelectedValue.ToString();
                                Bloquear();
                            }
                            else
                            {
                                MessageBox.Show(this, "Ocurrio un error al guardar la guia: " + apiGuiaRespuesta.error, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            }
                        }
                    }
                }
            }
        }
Beispiel #25
0
        private void BtnEnviar_Click(object sender, EventArgs e)
        {
            string            codigo     = DgDespachos.Rows[DgDespachos.CurrentRow.Index].Cells[0].Value.ToString();
            bool              validacion = true;
            RespuestaRndc     retorno    = new RespuestaRndc();
            BPMServicesClient client     = new BPMServicesClient();
            //Buscamos los terceros de ese despacho para transmitirlos
            string                parametrosJson   = "{\"codigoDespacho\":\"" + codigo + "\"}";
            string                jsonRespuesta    = ApiControlador.ApiPost("/transporte/api/windows/despacho/rndc", parametrosJson);
            ApiElementosRndc      apiElementosRndc = ser.Deserialize <ApiElementosRndc>(jsonRespuesta);
            List <ApiTerceroRndc> apiTerceroLista  = ser.Deserialize <List <ApiTerceroRndc> >(jsonRespuesta);

            foreach (ApiTerceroRndc apiTercero in apiElementosRndc.terceros)
            {
                string xmlTercero = "";
                if (apiTercero.conductor == "0")
                {
                    xmlTercero = @"<?xml version='1.0' encoding='ISO-8859-1' ?>
                            <root>
                                <acceso>
                                    <username>" + apiElementosRndc.configuracion.usuarioRndc + @"</username>
                                    <password>" + apiElementosRndc.configuracion.claveRndc + @"</password>
                                </acceso>
                                <solicitud>
                                    <tipo>1</tipo>
                                    <procesoid>11</procesoid>
                                </solicitud>
                                <variables>
                                    <NUMNITEMPRESATRANSPORTE>" + apiElementosRndc.configuracion.empresaRndc + @"</NUMNITEMPRESATRANSPORTE>
                                    <CODTIPOIDTERCERO>" + apiTercero.identificacionTipo + @"</CODTIPOIDTERCERO>
                                    <NUMIDTERCERO>" + apiTercero.identificacion + @"</NUMIDTERCERO>
                                    <NOMIDTERCERO>" + apiTercero.nombre1 + @"</NOMIDTERCERO>
                                    <PRIMERAPELLIDOIDTERCERO>" + apiTercero.apellido1 + @"</PRIMERAPELLIDOIDTERCERO>    
                                    <SEGUNDOAPELLIDOIDTERCERO> " + apiTercero.apellido2 + @"</SEGUNDOAPELLIDOIDTERCERO>
                                    <CODSEDETERCERO>" + apiTercero.codigoSede + @"</CODSEDETERCERO>
                                    <NOMSEDETERCERO>" + apiTercero.nombreSede + @"</NOMSEDETERCERO>
                                    <NUMTELEFONOCONTACTO>" + apiTercero.telefono + @"</NUMTELEFONOCONTACTO>
                                    <NOMENCLATURADIRECCION>" + apiTercero.direccion + @"</NOMENCLATURADIRECCION>
                                    <CODMUNICIPIORNDC>" + apiTercero.codigoCiudad + @"</CODMUNICIPIORNDC>
                                 </variables>
                              </root>";
                }

                if (apiTercero.conductor == "1")
                {
                    xmlTercero = @"<?xml version='1.0' encoding='ISO-8859-1' ?>
                            <root>
                                <acceso>
                                    <username>" + apiElementosRndc.configuracion.usuarioRndc + @"</username>
                                    <password>" + apiElementosRndc.configuracion.claveRndc + @"</password>
                                </acceso>
                                <solicitud>
                                    <tipo>1</tipo>
                                    <procesoid>11</procesoid>
                                </solicitud>
                                <variables>
                                    <NUMNITEMPRESATRANSPORTE>" + apiElementosRndc.configuracion.empresaRndc + @"</NUMNITEMPRESATRANSPORTE>
                                    <CODTIPOIDTERCERO>" + apiTercero.identificacionTipo + @"</CODTIPOIDTERCERO>
                                    <NUMIDTERCERO>" + apiTercero.identificacion + @"</NUMIDTERCERO>
                                    <NOMIDTERCERO>" + apiTercero.nombre1 + @"</NOMIDTERCERO>
                                    <PRIMERAPELLIDOIDTERCERO>" + apiTercero.apellido1 + @"</PRIMERAPELLIDOIDTERCERO>    
                                    <SEGUNDOAPELLIDOIDTERCERO> " + apiTercero.apellido2 + @"</SEGUNDOAPELLIDOIDTERCERO>
                                    <CODSEDETERCERO>" + apiTercero.codigoSede + @"</CODSEDETERCERO>
                                    <NOMSEDETERCERO>" + apiTercero.nombreSede + @"</NOMSEDETERCERO>
                                    <NUMTELEFONOCONTACTO>" + apiTercero.telefono + @"</NUMTELEFONOCONTACTO>
                                    <NOMENCLATURADIRECCION>" + apiTercero.direccion + @"</NOMENCLATURADIRECCION>
                                    <CODMUNICIPIORNDC>" + apiTercero.codigoCiudad + @"</CODMUNICIPIORNDC>
                                    <CODCATEGORIALICENCIACONDUCCION>" + apiTercero.categoriaLicencia + @"</CODCATEGORIALICENCIACONDUCCION>
                                    <NUMLICENCIACONDUCCION>" + apiTercero.numeroLicencia + @"</NUMLICENCIACONDUCCION>
                                    <FECHAVENCIMIENTOLICENCIA>" + apiTercero.fechaVenceLicencia + @"</FECHAVENCIMIENTOLICENCIA>
                                 </variables>
                              </root>";
                }

                AtenderMensajeRNDCRequest solicitudTercero = new AtenderMensajeRNDCRequest(xmlTercero);
                var           respuestaTercero             = client.AtenderMensajeRNDC(solicitudTercero);
                var           textXmlTercero    = respuestaTercero.@return;
                XmlSerializer serializerTercero = new XmlSerializer(typeof(RespuestaRndc));
                using (TextReader reader = new StringReader(textXmlTercero))
                {
                    //de esta manera se deserializa
                    retorno = (RespuestaRndc)serializerTercero.Deserialize(reader);
                    if (retorno.ErrorMSG != null)
                    {
                        string mensajeError = retorno.ErrorMSG.Substring(0, 9);
                        if (mensajeError != "DUPLICADO" && mensajeError != "Access vi")
                        {
                            MessageBox.Show(this, "Tercero " + apiTercero.identificacion + " " + retorno.ErrorMSG, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            validacion = false;
                        }
                    }
                }
            }


            if (validacion == true)
            {
                string xmlVehiculo = @"<?xml version='1.0' encoding='ISO-8859-1' ?>
                        <root>
                            <acceso>
                                <username>" + apiElementosRndc.configuracion.usuarioRndc + @"</username>
                                <password>" + apiElementosRndc.configuracion.claveRndc + @"</password>
                            </acceso>
                            <solicitud>
                                <tipo>1</tipo>
                                <procesoid>12</procesoid>
                            </solicitud>
                            <variables>
                                <NUMNITEMPRESATRANSPORTE>" + apiElementosRndc.configuracion.empresaRndc + @"</NUMNITEMPRESATRANSPORTE>
                                <NUMPLACA>" + apiElementosRndc.vehiculo.codigoVehiculoPk + @"</NUMPLACA>
                                <CODCONFIGURACIONUNIDADCARGA>" + apiElementosRndc.vehiculo.configuracion + @"</CODCONFIGURACIONUNIDADCARGA>
                                <NUMEJES>" + apiElementosRndc.vehiculo.numeroEjes + @"</NUMEJES>
                                <CODMARCAVEHICULOCARGA>" + apiElementosRndc.vehiculo.codigoMarca + @"</CODMARCAVEHICULOCARGA>
                                <CODLINEAVEHICULOCARGA>" + apiElementosRndc.vehiculo.codigoLinea + @"</CODLINEAVEHICULOCARGA>
                                <ANOFABRICACIONVEHICULOCARGA>" + apiElementosRndc.vehiculo.modelo + @"</ANOFABRICACIONVEHICULOCARGA>
                                <CODTIPOCOMBUSTIBLE>" + apiElementosRndc.vehiculo.tipoCombustible + @"</CODTIPOCOMBUSTIBLE>
                                <PESOVEHICULOVACIO>" + apiElementosRndc.vehiculo.pesoVacio + @"</PESOVEHICULOVACIO>
                                <CODCOLORVEHICULOCARGA>" + apiElementosRndc.vehiculo.codigoColor + @"</CODCOLORVEHICULOCARGA>
                                <CODTIPOCARROCERIA>" + apiElementosRndc.vehiculo.tipoCarroceria + @"</CODTIPOCARROCERIA>
                                <CODTIPOIDPROPIETARIO>" + apiElementosRndc.vehiculo.tipoIdentificacionPropietario + @"</CODTIPOIDPROPIETARIO>
                                <NUMIDPROPIETARIO>" + apiElementosRndc.vehiculo.numeroIdentificacionPropietario + @"</NUMIDPROPIETARIO>
                                <CODTIPOIDTENEDOR>" + apiElementosRndc.vehiculo.tipoIdentificacionPoseedor + @"</CODTIPOIDTENEDOR>
                                <NUMIDTENEDOR>" + apiElementosRndc.vehiculo.numeroIdentificacionPoseedor + @"</NUMIDTENEDOR>
                                <NUMSEGUROSOAT>" + apiElementosRndc.vehiculo.numeroPoliza + @"</NUMSEGUROSOAT>
                                <FECHAVENCIMIENTOSOAT>" + apiElementosRndc.vehiculo.fechaVencePoliza + @"</FECHAVENCIMIENTOSOAT>
                                <NUMNITASEGURADORASOAT>" + apiElementosRndc.vehiculo.numeroIdentificacionAseguradora + @"</NUMNITASEGURADORASOAT>
                                <CAPACIDADUNIDADCARGA>" + apiElementosRndc.vehiculo.capacidad + @"</CAPACIDADUNIDADCARGA>
                                <UNIDADMEDIDACAPACIDAD>1</UNIDADMEDIDACAPACIDAD>
                            </variables>
                        </root>";

                AtenderMensajeRNDCRequest solicitudVehiculo = new AtenderMensajeRNDCRequest(xmlVehiculo);
                var           respuestaVehiculo             = client.AtenderMensajeRNDC(solicitudVehiculo);
                var           textXmlVehiculo    = respuestaVehiculo.@return;
                XmlSerializer serializerVehiculo = new XmlSerializer(typeof(RespuestaRndc));
                using (TextReader reader = new StringReader(textXmlVehiculo))
                {
                    //de esta manera se deserializa
                    retorno = (RespuestaRndc)serializerVehiculo.Deserialize(reader);
                    if (retorno.ErrorMSG != null)
                    {
                        string mensajeError = retorno.ErrorMSG.Substring(0, 9);
                        if (mensajeError != "DUPLICADO")
                        {
                            MessageBox.Show(this, "Vehiculo " + apiElementosRndc.vehiculo.codigoVehiculoPk + " " + retorno.ErrorMSG, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            validacion = false;
                        }
                    }
                }


                if (validacion == true)
                {
                    if (apiElementosRndc.remolque != null)
                    {
                        string xmlRemolque = @"<?xml version='1.0' encoding='ISO-8859-1' ?>
                        <root>
                            <acceso>
                                <username>" + apiElementosRndc.configuracion.usuarioRndc + @"</username>
                                <password>" + apiElementosRndc.configuracion.claveRndc + @"</password>
                            </acceso>
                            <solicitud>
                                <tipo>1</tipo>
                                <procesoid>12</procesoid>
                            </solicitud>
                            <variables>
                                <NUMNITEMPRESATRANSPORTE>" + apiElementosRndc.configuracion.empresaRndc + @"</NUMNITEMPRESATRANSPORTE>
                                <NUMPLACA>" + apiElementosRndc.remolque.codigoVehiculoPk + @"</NUMPLACA>
                                <CODCONFIGURACIONUNIDADCARGA>" + apiElementosRndc.remolque.configuracion + @"</CODCONFIGURACIONUNIDADCARGA>                                
                                <CODMARCAVEHICULOCARGA>" + apiElementosRndc.remolque.codigoMarca + @"</CODMARCAVEHICULOCARGA>                                
                                <ANOFABRICACIONVEHICULOCARGA>" + apiElementosRndc.remolque.modelo + @"</ANOFABRICACIONVEHICULOCARGA>                                
                                <PESOVEHICULOVACIO>" + apiElementosRndc.remolque.pesoVacio + @"</PESOVEHICULOVACIO>
                                <CAPACIDADUNIDADCARGA>" + apiElementosRndc.remolque.capacidad + @"</CAPACIDADUNIDADCARGA>
                                <CODCOLORVEHICULOCARGA>" + apiElementosRndc.remolque.codigoColor + @"</CODCOLORVEHICULOCARGA>
                                <CODTIPOCARROCERIA>" + apiElementosRndc.remolque.tipoCarroceria + @"</CODTIPOCARROCERIA>
                                <CODTIPOIDPROPIETARIO>" + apiElementosRndc.remolque.tipoIdentificacionPropietario + @"</CODTIPOIDPROPIETARIO>
                                <NUMIDPROPIETARIO>" + apiElementosRndc.remolque.numeroIdentificacionPropietario + @"</NUMIDPROPIETARIO>
                                <CODTIPOIDTENEDOR>" + apiElementosRndc.remolque.tipoIdentificacionPoseedor + @"</CODTIPOIDTENEDOR>
                                <NUMIDTENEDOR>" + apiElementosRndc.remolque.numeroIdentificacionPoseedor + @"</NUMIDTENEDOR>                                                                                              
                            </variables>
                        </root>";

                        AtenderMensajeRNDCRequest solicitudRemolque = new AtenderMensajeRNDCRequest(xmlRemolque);
                        var           respuestaRemolque             = client.AtenderMensajeRNDC(solicitudRemolque);
                        var           textXmlRemolque    = respuestaRemolque.@return;
                        XmlSerializer serializerRemolque = new XmlSerializer(typeof(RespuestaRndc));
                        using (TextReader reader = new StringReader(textXmlRemolque))
                        {
                            //de esta manera se deserializa
                            retorno = (RespuestaRndc)serializerRemolque.Deserialize(reader);
                            if (retorno.ErrorMSG != null)
                            {
                                string mensajeError = retorno.ErrorMSG.Substring(0, 9);
                                if (mensajeError != "DUPLICADO")
                                {
                                    MessageBox.Show(this, "Remolque " + apiElementosRndc.remolque.codigoVehiculoPk + " " + retorno.ErrorMSG, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                    validacion = false;
                                }
                            }
                        }
                    }
                }

                if (validacion == true)
                {
                    //Transmitir guia
                    string xmlGuia = @"<?xml version='1.0' encoding='ISO-8859-1' ?>
                        <root>
                            <acceso>
                                <username>" + apiElementosRndc.configuracion.usuarioRndc + @"</username>
                                <password>" + apiElementosRndc.configuracion.claveRndc + @"</password>
                            </acceso>
                            <solicitud>
                                <tipo>1</tipo>
                                <procesoid>3</procesoid>
                            </solicitud>
                            <variables>
                                <NUMNITEMPRESATRANSPORTE>" + apiElementosRndc.configuracion.empresaRndc + @"</NUMNITEMPRESATRANSPORTE>
                                <CONSECUTIVOREMESA>" + apiElementosRndc.despacho.numero + @"</CONSECUTIVOREMESA>
                                <CODOPERACIONTRANSPORTE>P</CODOPERACIONTRANSPORTE>
                                <CODTIPOEMPAQUE>0</CODTIPOEMPAQUE>
                                <CODNATURALEZACARGA>1</CODNATURALEZACARGA>                                                  
                                <DESCRIPCIONCORTAPRODUCTO>PAQUETES VARIOS</DESCRIPCIONCORTAPRODUCTO>
                                <MERCANCIAREMESA>009880</MERCANCIAREMESA>
                                <CANTIDADCARGADA>" + apiElementosRndc.despacho.pesoReal + @"</CANTIDADCARGADA>
                                <UNIDADMEDIDACAPACIDAD>1</UNIDADMEDIDACAPACIDAD>
                                <CODTIPOIDREMITENTE>C</CODTIPOIDREMITENTE>
                                <NUMIDREMITENTE>222222222</NUMIDREMITENTE>
                                <CODSEDEREMITENTE>" + apiElementosRndc.despacho.codigoCiudadOrigenFk + @"</CODSEDEREMITENTE>
                                <CODTIPOIDDESTINATARIO>C</CODTIPOIDDESTINATARIO>
                                <NUMIDDESTINATARIO>333333333</NUMIDDESTINATARIO>
                                <CODSEDEDESTINATARIO>" + apiElementosRndc.despacho.codigoCiudadDestinoFk + @"</CODSEDEDESTINATARIO>
                                <CODTIPOIDPROPIETARIO>C</CODTIPOIDPROPIETARIO>
                                <NUMIDPROPIETARIO>222222222</NUMIDPROPIETARIO>
                                <CODSEDEPROPIETARIO>" + apiElementosRndc.despacho.codigoCiudadOrigenFk + @"</CODSEDEPROPIETARIO>
                                <DUENOPOLIZA>E</DUENOPOLIZA>
                                <NUMPOLIZATRANSPORTE>" + apiElementosRndc.configuracion.numeroPoliza + @"</NUMPOLIZATRANSPORTE>
                                <FECHAVENCIMIENTOPOLIZACARGA>" + apiElementosRndc.configuracion.fechaVencePoliza + @"</FECHAVENCIMIENTOPOLIZACARGA>
                                <COMPANIASEGURO>" + apiElementosRndc.configuracion.numeroIdentificacionAseguradora + @"</COMPANIASEGURO>
                                <HORASPACTOCARGA>24</HORASPACTOCARGA>
                                <MINUTOSPACTOCARGA>00</MINUTOSPACTOCARGA>
                                <FECHACITAPACTADACARGUE>" + apiElementosRndc.despacho.fechaSalida + @"</FECHACITAPACTADACARGUE>
                                <HORACITAPACTADACARGUE>22:00</HORACITAPACTADACARGUE>
                                <HORASPACTODESCARGUE>72</HORASPACTODESCARGUE>
                                <MINUTOSPACTODESCARGUE>00</MINUTOSPACTODESCARGUE>
                                <FECHACITAPACTADADESCARGUE>" + apiElementosRndc.despacho.fechaSalida + @"</FECHACITAPACTADADESCARGUE>
                                <HORACITAPACTADADESCARGUEREMESA>08:00</HORACITAPACTADADESCARGUEREMESA>
                            </variables>
                        </root>";

                    AtenderMensajeRNDCRequest solicitudGuia = new AtenderMensajeRNDCRequest(xmlGuia);
                    var           respuestaGuia             = client.AtenderMensajeRNDC(solicitudGuia);
                    var           textXmlGuia    = respuestaGuia.@return;
                    XmlSerializer serializerGuia = new XmlSerializer(typeof(RespuestaRndc));
                    using (TextReader reader = new StringReader(textXmlGuia))
                    {
                        //de esta manera se deserializa
                        retorno = (RespuestaRndc)serializerGuia.Deserialize(reader);
                        if (retorno.ErrorMSG != null)
                        {
                            string mensajeError = retorno.ErrorMSG.Substring(0, 9);
                            if (mensajeError != "DUPLICADO")
                            {
                                MessageBox.Show(this, "Guia " + apiElementosRndc.despacho.codigoDespachoPk + " " + retorno.ErrorMSG, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                validacion = false;
                            }
                        }
                    }
                    if (validacion == true)
                    {
                        //Transmitir manifiesto
                        string xmlManifiesto = @"<?xml version='1.0' encoding='ISO-8859-1' ?>
                            <root>
                                <acceso>
                                        <username>" + apiElementosRndc.configuracion.usuarioRndc + @"</username>
                                        <password>" + apiElementosRndc.configuracion.claveRndc + @"</password>
                                </acceso>
                                <solicitud>
                                    <tipo>1</tipo>
                                    <procesoid>4</procesoid>
                                </solicitud>
                                <variables>
                                    <NUMNITEMPRESATRANSPORTE>" + apiElementosRndc.configuracion.empresaRndc + @"</NUMNITEMPRESATRANSPORTE>
                                    <NUMMANIFIESTOCARGA>" + apiElementosRndc.despacho.numero + @"</NUMMANIFIESTOCARGA>
                                    <CODOPERACIONTRANSPORTE>P</CODOPERACIONTRANSPORTE>
                                    <FECHAEXPEDICIONMANIFIESTO>" + apiElementosRndc.despacho.fechaSalida + @"</FECHAEXPEDICIONMANIFIESTO>
                                    <CODMUNICIPIOORIGENMANIFIESTO>" + apiElementosRndc.despacho.codigoCiudadOrigen + @"</CODMUNICIPIOORIGENMANIFIESTO>
                                    <CODMUNICIPIODESTINOMANIFIESTO>" + apiElementosRndc.despacho.codigoCiudadDestino + @"</CODMUNICIPIODESTINOMANIFIESTO>
                                    <CODIDTITULARMANIFIESTO>" + apiElementosRndc.despacho.poseedorTipoIdentificacion + @"</CODIDTITULARMANIFIESTO>
                                    <NUMIDTITULARMANIFIESTO>" + apiElementosRndc.despacho.poseedorNumeroIdentificacion + @"</NUMIDTITULARMANIFIESTO>
                                    <NUMPLACA>" + apiElementosRndc.despacho.codigoVehiculoFk + @"</NUMPLACA>
                                    <NUMPLACAREMOLQUE>" + apiElementosRndc.despacho.codigoVehiculoRemolqueFk + @"</NUMPLACAREMOLQUE>
                                    <CODIDCONDUCTOR>" + apiElementosRndc.despacho.conductorTipoIdentificacion + @"</CODIDCONDUCTOR>
                                    <NUMIDCONDUCTOR>" + apiElementosRndc.despacho.conductorNumeroIdentificacion + @"</NUMIDCONDUCTOR>
                                    <VALORFLETEPACTADOVIAJE>" + apiElementosRndc.despacho.vrFletePago + @"</VALORFLETEPACTADOVIAJE>
                                    <RETENCIONFUENTEMANIFIESTO>" + apiElementosRndc.despacho.vrRetencionFuente + @"</RETENCIONFUENTEMANIFIESTO>
                                    <RETENCIONICAMANIFIESTOCARGA>" + apiElementosRndc.despacho.porcentajeIndustriaComercio + @"</RETENCIONICAMANIFIESTOCARGA>
                                    <VALORANTICIPOMANIFIESTO>" + apiElementosRndc.despacho.vrAnticipo + @"</VALORANTICIPOMANIFIESTO>
                                    <FECHAPAGOSALDOMANIFIESTO>" + apiElementosRndc.despacho.fechaSalida + @"</FECHAPAGOSALDOMANIFIESTO>                                                
                                    <CODRESPONSABLEPAGOCARGUE>E</CODRESPONSABLEPAGOCARGUE>
                                    <CODRESPONSABLEPAGODESCARGUE>E</CODRESPONSABLEPAGODESCARGUE>
                                    <OBSERVACIONES>NADA</OBSERVACIONES>
                                    <CODMUNICIPIOPAGOSALDO>05001000</CODMUNICIPIOPAGOSALDO>
                                    <REMESASMAN procesoid='43'><REMESA><CONSECUTIVOREMESA>" + apiElementosRndc.despacho.numero + @"</CONSECUTIVOREMESA></REMESA></REMESASMAN>
                                </variables>
                            </root>";

                        AtenderMensajeRNDCRequest solicitudManifiesto = new AtenderMensajeRNDCRequest(xmlManifiesto);
                        var           respuestaManifiesto             = client.AtenderMensajeRNDC(solicitudManifiesto);
                        var           textXmlManifiesto    = respuestaManifiesto.@return;
                        XmlSerializer serializerManifiesto = new XmlSerializer(typeof(RespuestaRndc));
                        using (TextReader reader = new StringReader(textXmlManifiesto))
                        {
                            //de esta manera se deserializa
                            retorno = (RespuestaRndc)serializerManifiesto.Deserialize(reader);
                            if (retorno.ErrorMSG != null)
                            {
                                string mensajeError = retorno.ErrorMSG.Substring(0, 9);
                                if (mensajeError != "DUPLICADO")
                                {
                                    MessageBox.Show(this, "Manifiesto " + apiElementosRndc.despacho.codigoDespachoPk + " " + retorno.ErrorMSG, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                                }
                                else
                                {
                                    ApiControlador.ApiPost("/transporte/api/windows/despacho/rndcasignar", "{\"codigoDespacho\":\"" + apiElementosRndc.despacho.codigoDespachoPk + "\",\"id\":\"" + apiElementosRndc.despacho.codigoDespachoPk + "\"}");
                                    MessageBox.Show(this, "Se transmitio correctamente el manifiesto", "Envio correcto", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                    LlenarDatosApi();
                                }
                            }
                            else
                            {
                                ApiControlador.ApiPost("/transporte/api/windows/despacho/rndcasignar", "{\"codigoDespacho\":\"" + apiElementosRndc.despacho.codigoDespachoPk + "\",\"id\":\"" + retorno.ingresoid + "\"}");
                                MessageBox.Show(this, "Se transmitio correctamente el manifiesto", "Envio correcto", MessageBoxButtons.OK, MessageBoxIcon.Information);
                                LlenarDatosApi();
                            }
                        }
                    }
                }
            }
        }