public static ReporteResultadoConciliacion calcularReporteConciliacionManual(List <CartolaBancariaModel> Cartola, List <LibroMayorConciliacion> LibroMayor)
    {
        var LibroMayorVacio = new List <LibroMayorConciliacion>();
        var Reporte         = new ReporteResultadoConciliacion();

        var NoContEnElMayor = Cartola.Where(x => x.EstaConciliado == false).ToList();

        var NoRegisCartola = (from LibroM in LibroMayor
                              where !Cartola.Any(x => x.Folio == LibroM.NumDocAsignado)

                              select LibroM).ToList();

        decimal TotalDocumNoContMayor = Math.Abs(NoContEnElMayor.Sum(x => x.Haber)) - Math.Abs(NoContEnElMayor.Sum(x => x.Debe));
        decimal TotalNoRegisCartola   = Math.Abs(NoRegisCartola.Sum(x => x.Haber)) - Math.Abs(NoRegisCartola.Sum(x => x.Debe));
        decimal TotalSaldoMayor       = Math.Abs(LibroMayor.Sum(x => x.Haber)) - Math.Abs(LibroMayor.Sum(x => x.Debe));
        decimal TotalSaldoCartola     = Math.Abs(Cartola.Sum(x => x.Haber)) - Math.Abs(Cartola.Sum(x => x.Debe));
        decimal TotalMayor            = Math.Abs(TotalSaldoMayor) - Math.Abs(TotalDocumNoContMayor);
        decimal TotalCartola          = TotalSaldoCartola;

        Reporte.LstNoContabilizadosEnElMayor    = NoContEnElMayor;
        Reporte.LstNoContabilizadosEnLaCartola  = NoRegisCartola;
        Reporte.TotalSaldoNoContabilizadosMayor = TotalDocumNoContMayor;
        Reporte.TotalMayor               = TotalMayor;
        Reporte.TotalCartola             = TotalCartola;
        Reporte.TotalDocumNoContaCartola = TotalNoRegisCartola;
        Reporte.TotalSaldoCartola        = TotalSaldoCartola;
        Reporte.TotalSaldoMayor          = TotalSaldoMayor;

        return(Reporte);
    }
        public ActionResult EjecutarConciliacion(ComparacionConciliacionBancariaViewModel DatosConciliacion)
        {
            string                 UserID     = User.Identity.GetUserId();
            FacturaPoliContext     db         = ParseExtensions.GetDatabaseContext(UserID);
            ClientesContablesModel objCliente = PerfilamientoModule.GetClienteContableSeleccionado(Session, UserID, db);

            CuentaContableModel CuentaConsultada = ParseExtensions.ObtenerCuentaDesdeId(DatosConciliacion.IdCuentaContable, objCliente);

            var Reporte = new ReporteResultadoConciliacion();
            var DatosConciliacionActualizados = CartolaBancariaModel.ConciliarSiSePuede(DatosConciliacion, db, objCliente);
            var ActualizarTablas    = CartolaBancariaMacroModel.ActualizarEstadosConciliacion(db, objCliente, DatosConciliacionActualizados.Item2, CuentaConsultada, DatosConciliacionActualizados.Item1.IdCartola);
            var ReporteConciliacion = CartolaBancariaModel.calcularReporteConciliacionManual(DatosConciliacionActualizados.Item1.lstCartola, DatosConciliacionActualizados.Item1.lstLibroMayor);

            return(View(ReporteConciliacion));
        }
    public static ReporteResultadoConciliacion CalcularReporteConciliacion(List <CartolaBancariaModel> Cartola, List <LibroMayorConciliacion> LibroMayor, FacturaPoliContext db, ClientesContablesModel ObjCliente)
    {
        var LibroMayorVacio = new List <LibroMayorConciliacion>();
        var Reporte         = new ReporteResultadoConciliacion();
        var NoContEnElMayor = Cartola.Where(x => x.EstaConciliado == false).ToList();

        decimal TotalDocumNoContMayor = Math.Abs(NoContEnElMayor.Sum(x => x.Haber)) - Math.Abs(NoContEnElMayor.Sum(x => x.Debe));
        decimal TotalSaldoMayor       = Math.Abs(LibroMayor.Sum(x => x.Haber)) - Math.Abs(LibroMayor.Sum(x => x.Debe));
        decimal TotalSaldoCartola     = Math.Abs(Cartola.Sum(x => x.Haber)) - Math.Abs(Cartola.Sum(x => x.Debe));
        decimal TotalMayor            = Math.Abs(TotalSaldoMayor) - Math.Abs(TotalDocumNoContMayor);
        decimal TotalCartola          = TotalSaldoCartola;

        Reporte.LstNoContabilizadosEnElMayor    = NoContEnElMayor;
        Reporte.LstNoContabilizadosEnLaCartola  = LibroMayor;
        Reporte.TotalSaldoNoContabilizadosMayor = TotalDocumNoContMayor;
        Reporte.TotalMayor        = TotalMayor;
        Reporte.TotalCartola      = TotalCartola;
        Reporte.TotalSaldoCartola = TotalSaldoCartola;
        Reporte.TotalSaldoMayor   = TotalSaldoMayor;

        return(Reporte);
    }