private void GrabarDetalles()
 {
     try
     {
         var listaPolizasDetalle = (_vista.EsConsolidado) ? _vista.PolizaDetallesParaConsolidado : _vista.PolizaDetalles;
         foreach (var detalle in listaPolizasDetalle.ToList().Where(pd => pd.QTY > 0))
         {
             var op = CosteoServicio.GrabarPolizaDetalle(new CosteoArgumento {
                 PolizaDetalle = detalle, Login = InteraccionConUsuarioServicio.ObtenerUsuario()
             });
             if (op.Resultado == ResultadoOperacionTipo.Error)
             {
                 InteraccionConUsuarioServicio.MensajeErrorDialogo(op.Mensaje);
                 break;
             }
             if (detalle.LINE_NUMBER == 0)
             {
                 detalle.LINE_NUMBER = int.Parse(op.DbData);
             }
         }
         if (listaPolizasDetalle.ToList().Exists(pd => pd.QTY > 0))
         {
             InteraccionConUsuarioServicio.MensajeExito("Se grabo exitosamente.");
         }
     }
     catch (Exception exception)
     {
         InteraccionConUsuarioServicio.MensajeErrorDialogo(exception.Message);
     }
 }
 private void _vista_UsuarioDeseaObtenerPolizasEncabezadoPendientes(object sender, CosteoArgumento e)
 {
     try
     {
         _vista.Polizas = CosteoServicio.ObtenerPolizasEncabezadosPendientesDeAutorizar(e);
     }
     catch (Exception exception)
     {
         InteraccionConUsuarioServicio.MensajeErrorDialogo(exception.Message);
     }
 }
        private void _vista_UsuarioDeseaObtenerPolizaDetallePendiente(object sender, CosteoArgumento e)
        {
            try
            {
                if (_vista.EsConsolidado)
                {
                    var polizas = _vista.Polizas.Where(p => p.IS_SELECTED && !_vista.PolizaDetallesParaConsolidado.ToList().Exists(pd => pd.DOC_ID == p.DOC_ID)).ToList();
                    foreach (var poliza in polizas)
                    {
                        var polizasDetalle = CosteoServicio.ObtenerPolizasDetallePendientesDeAutorizar(new CosteoArgumento {
                            Poliza = poliza
                        });
                        foreach (var polizaDetalle in polizasDetalle)
                        {
                            polizaDetalle.DOC_ID      = poliza.DOC_ID;
                            polizaDetalle.CLIENT_CODE = poliza.CLIENT_CODE;
                            _vista.PolizaDetallesParaConsolidado.Add(polizaDetalle);
                        }
                    }

                    _vista.PolizaDetallesParaConsolidado = _vista.PolizaDetallesParaConsolidado.Where(pc => _vista.Polizas.ToList().Exists(p => p.IS_SELECTED && p.DOC_ID == pc.DOC_ID)).ToList();
                    AgruparDetallesParaConsolidado();
                }
                else
                {
                    var polizasDetalle = CosteoServicio.ObtenerPolizasDetallePendientesDeAutorizar(e);
                    foreach (var polizaDetalle in polizasDetalle)
                    {
                        polizaDetalle.DOC_ID      = e.Poliza.DOC_ID;
                        polizaDetalle.CLIENT_CODE = e.Poliza.CLIENT_CODE;
                    }
                    _vista.PolizaDetalles = polizasDetalle;
                }
            }
            catch (Exception exception)
            {
                InteraccionConUsuarioServicio.MensajeErrorDialogo(exception.Message);
            }
        }
 private void GrabarEncabezados()
 {
     try
     {
         foreach (var poliza in _vista.Polizas.ToList().Where(p => p.IS_SELECTED && p.TRANS_TYPE.Equals("INICIALIZACION_GENERAL")))
         {
             var op = CosteoServicio.ActualizarPolizaEncabezado(new CosteoArgumento {
                 Poliza = poliza, Login = InteraccionConUsuarioServicio.ObtenerUsuario()
             });
             if (op.Resultado != ResultadoOperacionTipo.Error)
             {
                 continue;
             }
             InteraccionConUsuarioServicio.MensajeErrorDialogo(op.Mensaje);
             break;
         }
     }
     catch (Exception exception)
     {
         InteraccionConUsuarioServicio.MensajeErrorDialogo(exception.Message);
     }
 }