Esempio n. 1
0
        private void GenerarAsientoAnPrograma(Traspaso traspaso, CuentaTransitoria cuentaTransitoria)
        {
            var usuarioActual = HttpContext.User.Identity.Name;

            var cuentaTransferencia = new CuentaAsiento //Debito
            {
                ComprobanteId       = traspaso.ComprobanteId,
                CuentaContableId    = (int)cuentaTransitoria,
                Glosa               = traspaso.Glosa,
                Debe                = traspaso.Monto,
                Haber               = 0,
                TerritorioId        = 1,
                PlanProgramaticoId  = 6,
                ContraparteId       = 1,
                EsDebe              = true,
                EsAjuste            = false,
                UsuarioCreacion     = usuarioActual,
                UsuarioModificacion = usuarioActual
            };

            cuentasAsientosManager.InsertCuentaAsiento(cuentaTransferencia);

            var cuentaPrograma = new CuentaAsiento
            {
                ComprobanteId       = traspaso.ComprobanteId,
                CuentaContableId    = traspaso.CuentaContableId,
                Glosa               = traspaso.Glosa,
                Debe                = 0,
                Haber               = traspaso.Monto,
                TerritorioId        = 1,
                PlanProgramaticoId  = 6,
                ContraparteId       = 1,
                EsDebe              = false,
                EsAjuste            = false,
                UsuarioCreacion     = usuarioActual,
                UsuarioModificacion = usuarioActual
            };

            cuentasAsientosManager.InsertCuentaAsiento(cuentaPrograma);

            // Tabla de Cuentas Traspaso
            var traspasoPrograma = new TraspasosPrograma
            {
                ComprobanteProgramaId   = cuentaTransferencia.ComprobanteId,
                MontoTraspaso           = cuentaTransferencia.Debe,
                CuentaTransitoriaNumero = traspaso.CuentaTransitoriaNro.ToString(),
                UsuarioCreacion         = usuarioActual,
                UsuarioModificacion     = usuarioActual
            };

            traspasosProgramasManager.InsertTraspasosPrograma(traspasoPrograma);
        }
Esempio n. 2
0
        private void GenerarAsientoEstadoCuenta(EstadoCuenta estadoCuenta)
        {
            var usuarioActual = HttpContext.User.Identity.Name;

            var cuentaEstadoCuenta = new CuentaAsiento //Debito
            {
                ComprobanteId       = estadoCuenta.ComprobanteId,
                CuentaContableId    = estadoCuenta.CuentaContableEstadoId,
                Glosa               = estadoCuenta.Glosa,
                Debe                = estadoCuenta.Debe,
                Haber               = estadoCuenta.Haber,
                TerritorioId        = 1,
                PlanProgramaticoId  = 6,
                ContraparteId       = 1,
                EsDebe              = true,
                EsAjuste            = false,
                UsuarioCreacion     = usuarioActual,
                UsuarioModificacion = usuarioActual
            };

            cuentasAsientosManager.InsertCuentaAsiento(cuentaEstadoCuenta);

            var cuentaPrograma = new CuentaAsiento
            {
                ComprobanteId       = estadoCuenta.ComprobanteId,
                CuentaContableId    = estadoCuenta.CuentaContableId,
                Glosa               = estadoCuenta.Glosa,
                Debe                = estadoCuenta.Haber,
                Haber               = estadoCuenta.Debe,
                TerritorioId        = 1,
                PlanProgramaticoId  = 6,
                ContraparteId       = 1,
                EsDebe              = false,
                EsAjuste            = false,
                UsuarioCreacion     = usuarioActual,
                UsuarioModificacion = usuarioActual
            };

            cuentasAsientosManager.InsertCuentaAsiento(cuentaPrograma);

            var comprobanteActual = comprobantesManager.GetComprobante(estadoCuenta.ComprobanteId);

            // Insertar en la Tabla de Estados de Cuentas
            if (!estadoCuenta.EstadoCuentaRelacionado)
            {
                if (estadoCuenta.Debe > 0)
                {
                    var estadoCuentaDebe = new EstadoCuenta
                    {
                        TipoEstadoCuentaId  = estadoCuenta.TipoEstadoCuentaId,
                        DebeCiudadId        = comprobanteActual.CiudadId,
                        DebeFacilityId      = comprobanteActual.FacilityId,
                        DebeCuentaAsientoId = cuentaEstadoCuenta.Id,
                        UsuarioCreacion     = usuarioActual,
                        UsuarioModificacion = usuarioActual
                    };

                    estadosCuentasManager.InsertEstadoCuenta(estadoCuentaDebe);
                }

                if (estadoCuenta.Haber > 0)
                {
                    var estadoCuentaHaber = new EstadoCuenta
                    {
                        TipoEstadoCuentaId   = estadoCuenta.TipoEstadoCuentaId,
                        HaberCiudadId        = comprobanteActual.CiudadId,
                        HaberFacilityId      = comprobanteActual.FacilityId,
                        HaberCuentaAsientoId = cuentaEstadoCuenta.Id,
                        UsuarioCreacion      = usuarioActual,
                        UsuarioModificacion  = usuarioActual
                    };

                    estadosCuentasManager.InsertEstadoCuenta(estadoCuentaHaber);
                }
            }

            // Si es estado de Cuentas Relacionado Actualizar el Estado de Cuentas Correspondiente
            if (estadoCuenta.EstadoCuentaRelacionado)
            {
                var estadoCuentaRelacionado = estadosCuentasManager.GetEstadoCuenta(estadoCuenta.EstadoCuentaRelacionadoId);
                estadoCuentaRelacionado.UsuarioModificacion = usuarioActual;

                var completarDebe = (estadoCuentaRelacionado.DebeCuentaAsientoId == null);
                if (completarDebe)
                {
                    estadoCuentaRelacionado.DebeCiudadId        = comprobanteActual.CiudadId;
                    estadoCuentaRelacionado.DebeFacilityId      = comprobanteActual.FacilityId;
                    estadoCuentaRelacionado.DebeCuentaAsientoId = cuentaEstadoCuenta.Id;

                    estadosCuentasManager.UpdateEstadoCuentaDebe(estadoCuentaRelacionado);
                }
                else
                {
                    estadoCuentaRelacionado.HaberCiudadId        = comprobanteActual.CiudadId;
                    estadoCuentaRelacionado.HaberFacilityId      = comprobanteActual.FacilityId;
                    estadoCuentaRelacionado.HaberCuentaAsientoId = cuentaEstadoCuenta.Id;

                    estadosCuentasManager.UpdateEstadoCuentaHaber(estadoCuentaRelacionado);
                }
            }
        }