Exemple #1
0
        /// <summary>
        /// Inserta el retiro de aportacion.
        /// </summary>
        /// <param name="SOCIOS_ID"></param>
        /// <param name="RETIROS_AP_FECHA"></param>
        /// <param name="RETIROS_AP_ORDINARIA"></param>
        /// <param name="RETIROS_AP_EXTRAORDINARIA"></param>
        /// <param name="RETIROS_AP_CAPITALIZACION_RETENCION"></param>
        /// <param name="RETIROS_AP_INTERESES_S_APORTACION"></param>
        /// <param name="RETIROS_AP_EXCEDENTE_PERIODO"></param>
        /// <param name="CREADO_POR"></param>
        /// <param name="FECHA_CREACION"></param>
        /// <param name="MODIFICADO_POR"></param>
        /// <param name="FECHA_MODIFICACION"></param>
        public void InsertarRetiroDeAportaciones
            (string SOCIOS_ID,
            DateTime RETIROS_AP_FECHA,
            decimal RETIROS_AP_ORDINARIA,
            decimal RETIROS_AP_EXTRAORDINARIA,
            decimal RETIROS_AP_CAPITALIZACION_RETENCION,
            decimal RETIROS_AP_INTERESES_S_APORTACION,
            decimal RETIROS_AP_EXCEDENTE_PERIODO,
            string CREADO_POR,
            DateTime FECHA_CREACION,
            string MODIFICADO_POR,
            DateTime FECHA_MODIFICACION)
        {
            try
            {
                using (var db = new colinasEntities())
                {
                    using (var scope1 = new TransactionScope())
                    {
                        retiro_aportaciones retiro_aportacion = new retiro_aportaciones();

                        retiro_aportacion.SOCIOS_ID        = SOCIOS_ID;
                        retiro_aportacion.RETIROS_AP_FECHA = RETIROS_AP_FECHA;

                        retiro_aportacion.RETIROS_AP_ORDINARIA                = RETIROS_AP_ORDINARIA;
                        retiro_aportacion.RETIROS_AP_EXTRAORDINARIA           = RETIROS_AP_EXTRAORDINARIA;
                        retiro_aportacion.RETIROS_AP_CAPITALIZACION_RETENCION = RETIROS_AP_CAPITALIZACION_RETENCION;
                        retiro_aportacion.RETIROS_AP_INTERESES_S_APORTACION   = RETIROS_AP_INTERESES_S_APORTACION;
                        retiro_aportacion.RETIROS_AP_EXCEDENTE_PERIODO        = RETIROS_AP_INTERESES_S_APORTACION;

                        retiro_aportacion.RETIROS_AP_TOTAL_RETIRADO =
                            RETIROS_AP_ORDINARIA +
                            RETIROS_AP_EXTRAORDINARIA +
                            RETIROS_AP_CAPITALIZACION_RETENCION +
                            RETIROS_AP_INTERESES_S_APORTACION +
                            RETIROS_AP_INTERESES_S_APORTACION;

                        retiro_aportacion.CREADO_POR         = retiro_aportacion.MODIFICADO_POR = CREADO_POR;
                        retiro_aportacion.FECHA_CREACION     = DateTime.Today;
                        retiro_aportacion.FECHA_MODIFICACION = retiro_aportacion.FECHA_CREACION;

                        db.retiros_aportaciones.AddObject(retiro_aportacion);

                        db.SaveChanges();

                        AportacionLogic aportacionlogic = new AportacionLogic();
                        aportacionlogic.InsertarTransaccionAportacionesDeSocio(retiro_aportacion, db);

                        scope1.Complete();
                    }
                }
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al insertar retiro de aportaciones.", ex);
                throw;
            }
        }
Exemple #2
0
        /// <summary>
        /// Inserta la transacción del retiro aportación en la tabla de aportaciones como salida (retiro).
        /// </summary>
        /// <param name="RetiroDeAportaciones"></param>
        /// <param name="db"></param>
        public void InsertarTransaccionAportacionesDeSocio(retiro_aportaciones RetiroDeAportaciones, colinasEntities db)
        {
            try
            {
                reporte_total_aportaciones_por_socio asocInventory = this.GetAportacionesXSocio(RetiroDeAportaciones.SOCIOS_ID);

                decimal saldo_aportaciones_ordinaria                = asocInventory == null ? 0 : asocInventory.APORTACIONES_ORDINARIA_SALDO;
                decimal saldo_aportaciones_extraordinaria           = asocInventory == null ? 0 : asocInventory.APORTACIONES_EXTRAORDINARIA_SALDO;
                decimal saldo_aportaciones_capitalizacion_retencion = asocInventory == null ? 0 : asocInventory.APORTACIONES_CAPITALIZACION_RETENCION_SALDO;
                decimal saldo_aportaciones_intereses_aportaciones   = asocInventory == null ? 0 : asocInventory.APORTACIONES_INTERESES_S_APORTACION_SALDO;
                decimal saldo_aportaciones_excedente_periodo        = asocInventory == null ? 0 : asocInventory.APORTACIONES_EXCEDENTE_PERIODO_SALDO;

                decimal saldo_aportaciones_total = asocInventory == null ? 0 : asocInventory.APORTACIONES_SALDO_TOTAL;

                decimal liquidacion_aportacion_extraordinaria = RetiroDeAportaciones.RETIROS_AP_EXTRAORDINARIA;

                aportacion_socio aportacionDeSocio = new aportacion_socio();

                aportacionDeSocio.SOCIOS_ID      = RetiroDeAportaciones.SOCIOS_ID;
                aportacionDeSocio.DOCUMENTO_ID   = RetiroDeAportaciones.RETIROS_AP_ID;
                aportacionDeSocio.DOCUMENTO_TIPO = "SALIDA";//Los retiros de aportaciones son tomadas como salidas para las aportaciones

                aportacionDeSocio.APORTACIONES_ORDINARIA_SALDO                = saldo_aportaciones_ordinaria - RetiroDeAportaciones.RETIROS_AP_ORDINARIA;
                aportacionDeSocio.APORTACIONES_EXTRAORDINARIA_SALDO           = saldo_aportaciones_extraordinaria - liquidacion_aportacion_extraordinaria;
                aportacionDeSocio.APORTACIONES_CAPITALIZACION_RETENCION_SALDO = saldo_aportaciones_capitalizacion_retencion - RetiroDeAportaciones.RETIROS_AP_CAPITALIZACION_RETENCION;
                aportacionDeSocio.APORTACIONES_INTERESES_S_APORTACION_SALDO   = saldo_aportaciones_intereses_aportaciones + RetiroDeAportaciones.RETIROS_AP_INTERESES_S_APORTACION;
                aportacionDeSocio.APORTACIONES_EXCEDENTE_PERIODO_SALDO        = saldo_aportaciones_excedente_periodo + RetiroDeAportaciones.RETIROS_AP_EXCEDENTE_PERIODO;

                aportacionDeSocio.APORTACIONES_CANTIDAD    = -RetiroDeAportaciones.RETIROS_AP_TOTAL_RETIRADO;
                aportacionDeSocio.APORTACIONES_SALDO_TOTAL = saldo_aportaciones_total + aportacionDeSocio.APORTACIONES_CANTIDAD;

                aportacionDeSocio.CREADO_POR     = RetiroDeAportaciones.CREADO_POR;
                aportacionDeSocio.FECHA_CREACION = RetiroDeAportaciones.FECHA_CREACION;

                db.aportaciones_socio.AddObject(aportacionDeSocio);

                db.SaveChanges();
            }
            catch (Exception ex)
            {
                log.Fatal("Error fatal al insertar transaccion de aportaciones de socio. Retiro de Aportaciones.", ex);
                throw;
            }
        }