Ejemplo n.º 1
0
        public List <saldoscuentas> DevolverSaldos(List <int> idcuenta, string aniotrabajo, int idsucursal)
        {
            List <saldoscuentas> cuentatot = new List <saldoscuentas>();
            List <saldoscuentas> cuentauno = new List <saldoscuentas>();

            using (siimnEntities bd = new siimnEntities())
            {
                try
                {
                    foreach (int item in idcuenta)
                    {
                        var query = bd.saldoscuentas.Where(sal => sal.cuenta == item && sal.anio == aniotrabajo && sal.idsucursal == idsucursal);
                        if (query.Count() > 0)
                        {
                            foreach (var queryun in query.ToList())
                            {
                                saldoscuentas sald = new saldoscuentas();
                                sald.anio            = queryun.anio;
                                sald.credimes        = queryun.credimes;
                                sald.cuenta          = queryun.cuenta;
                                sald.debimes         = queryun.debimes;
                                sald.idsaldoscuentas = queryun.idsaldoscuentas;
                                sald.idsucursal      = queryun.idsucursal;
                                sald.mes             = queryun.mes;
                                sald.saldomes        = queryun.saldomes;
                                cuentauno.Add(sald);
                            }
                        }
                    }
                    if (cuentauno.Count() > 0)
                    {
                        foreach (saldoscuentas item in cuentauno.OrderBy(dev => dev.cuenta).ToList())
                        {
                            saldoscuentas salcuenta = new saldoscuentas();

                            var cuenta2 = cuentatot.Where(cue => cue.mes == item.mes);
                            if (cuenta2.Count() > 0)
                            {
                                cuenta2.First().saldomes = cuenta2.First().saldomes + item.saldomes;
                                cuenta2.First().credimes = cuenta2.First().credimes + item.credimes;
                                cuenta2.First().debimes  = cuenta2.First().debimes + item.debimes;
                            }
                            else
                            {
                                salcuenta.anio     = item.anio;
                                salcuenta.mes      = item.mes;
                                salcuenta.cuenta   = item.cuenta;
                                salcuenta.saldomes = salcuenta.saldomes + item.saldomes;
                                salcuenta.credimes = salcuenta.credimes + item.credimes;
                                salcuenta.debimes  = salcuenta.debimes + item.debimes;
                                cuentatot.Add(salcuenta);
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    throw ex;
                }

                return(cuentatot);
            }
        }
Ejemplo n.º 2
0
        public bool ActualizarUnAsiento(List <movimi> lstMovimi)
        {
            bool result = false;

            using (siimnEntities bd = new siimnEntities())
            {
                try
                {
                    foreach (movimi item in lstMovimi)
                    {
                        var query = bd.saldoscuentas.Where(sal => sal.idsucursal == item.idsucursal &&
                                                           sal.cuenta == item.cuenta && sal.anio == item.anio &&
                                                           sal.mes == item.mes);
                        if (query.Count() > 0)
                        {
                            query.First().saldomes = query.First().saldomes + item.valordebito + item.valorcredito;
                            query.First().debimes  = query.First().debimes + item.valordebito;
                            query.First().credimes = query.First().credimes + item.valorcredito;
                        }
                        else
                        {
                            saldoscuentas saldos = new saldoscuentas();
                            saldos.idsucursal = item.idsucursal;
                            saldos.cuenta     = item.cuenta;
                            saldos.anio       = item.anio;
                            saldos.mes        = item.mes;
                            saldos.saldomes   = item.valorcredito + item.valordebito;
                            saldos.debimes    = item.valordebito;
                            saldos.credimes   = item.valorcredito;
                            bd.saldoscuentas.Add(saldos);
                        }

                        if (item.idnit != null)
                        {
                            var query1 = bd.maepagos.Where(mae => mae.idsucursal == item.idsucursal && mae.cuenta == item.cuenta &&
                                                           mae.idnit == item.idnit && mae.anio == item.anio && mae.mes == item.mes);
                            if (query1.Count() > 0)
                            {
                                query1.First().saldomes = query.First().saldomes + item.valordebito + item.valorcredito;
                                query1.First().debimes  = query.First().debimes + item.valordebito;
                                query1.First().credimes = query.First().credimes + item.valorcredito;
                            }
                            else
                            {
                                maepagos pagos = new maepagos();
                                pagos.idsucursal = item.idsucursal;
                                pagos.cuenta     = item.cuenta;
                                pagos.idnit      = item.idnit ?? default(int);
                                pagos.anio       = item.anio;
                                pagos.mes        = item.mes;
                                pagos.saldomes   = item.valorcredito + item.valordebito;
                                pagos.debimes    = item.valordebito;
                                pagos.credimes   = item.valorcredito;
                                bd.maepagos.Add(pagos);
                            }
                        }

                        if (item.idcentro != null)
                        {
                            var query2 = bd.acucentr.Where(acu => acu.idsucursal == item.idsucursal && acu.anio == item.anio && acu.mes == item.mes &&
                                                           acu.idcentro == item.idcentro && acu.idcuenta == item.cuenta && acu.idnit == item.idnit);
                            if (query2.Count() > 0)
                            {
                                query2.First().saldomes = query.First().saldomes + item.valordebito + item.valorcredito;
                                query2.First().debimes  = query.First().debimes + item.valordebito;
                                query2.First().credimes = query.First().credimes + item.valorcredito;
                            }
                            else
                            {
                                acucentr salcentro = new acucentr();
                                salcentro.idsucursal = item.idsucursal;
                                salcentro.idcuenta   = item.cuenta;
                                salcentro.idnit      = item.idnit ?? default(int);
                                salcentro.idcentro   = item.idcentro ?? default(int);
                                salcentro.anio       = item.anio;
                                salcentro.mes        = item.mes;
                                salcentro.saldomes   = item.valorcredito + item.valordebito;
                                salcentro.debimes    = item.valordebito;
                                salcentro.credimes   = item.valorcredito;
                                bd.acucentr.Add(salcentro);
                            }
                        }
                    }
                    bd.SaveChanges();
                    result = true;
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }

            return(result);
        }