Exemplo n.º 1
0
 public bool EliminarActividad(int pkActividad, EDInformacionAuditoria edInfoauditoria)
 {
     using (var transaction = db.Database.BeginTransaction())
     {
         try
         {
             ActividadPresupuesto ac = ObtenerActividadPresupuesto(pkActividad);
             if (db.Tbl_ActivaAuditoriaSistema.ToList().FirstOrDefault().EsActivaLiderazgoGerencial)
             {
                 db.Tbl_AuditoriaLiderazgoGerencialSistema.Add(auditoriaSistema.ObtenerAuditoriaLiderazgoGerencial(edInfoauditoria,
                                                                                                                   Enumeraciones.EnumAuditoriaSistema.Acciones.ELIMINACION,
                                                                                                                   Enumeraciones.EnumAuditoriaSistema.Modulos.Liderazgo_Gerencial,
                                                                                                                   Enumeraciones.EnumAuditoriaSistema.SubModulos.Presupuesto,
                                                                                                                   Enumeraciones.EnumAuditoriaSistema.Opciones.ConsultarPresupuesto,
                                                                                                                   ac.ToString()));
             }
             db.Tbl_Actividad_Presupuesto.Remove(ac);
             db.SaveChanges();
             transaction.Commit();
             return(true);
         }
         catch (Exception ex)
         {
             //RegistroInformacion.EnviarError<ActividadPresupuesto>(ex.Message);
             transaction.Rollback();
             return(false);
         }
     }
 }
Exemplo n.º 2
0
        public bool GuardarPresupuesto(List <ActividadPresupuesto> actividadesPresupuesto, EDInformacionAuditoria edInfoauditoria)
        {
            SG_SSTContext dbaud = new SG_SSTContext();

            using (var transaction = db.Database.BeginTransaction())
            {
                try
                {
                    foreach (ActividadPresupuesto ac in actividadesPresupuesto)
                    {
                        if (ac.PK_Actividad_Presupuesto > 0)
                        {
                            if (ac.actividadesPresupuesto != null)
                            {
                                List <ActividadPresupuesto> lisAux = ac.actividadesPresupuesto.ToList();
                                foreach (ActividadPresupuesto actividadesSecun in lisAux)
                                {
                                    if (actividadesSecun.PK_Actividad_Presupuesto > 0)
                                    {
                                        foreach (PresupuestoPorMes pxm in actividadesSecun.presupuestosPorMes)
                                        {
                                            /*inicio auditoria*/
                                            if (db.Tbl_ActivaAuditoriaSistema.ToList().FirstOrDefault().EsActivaLiderazgoGerencial)
                                            {
                                                PresupuestoPorMes pxmaudi = dbaud.Tbl_Presupuesto_Por_Mes.Find(pxm.PK_Prepuesto_Por_Mes);
                                                db.Tbl_AuditoriaLiderazgoGerencialSistema.Add(auditoriaSistema.ObtenerAuditoriaLiderazgoGerencial(edInfoauditoria,
                                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.Acciones.MODIFICACION,
                                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.Modulos.Liderazgo_Gerencial,
                                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.SubModulos.Presupuesto,
                                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.Opciones.ConsultarPresupuesto,
                                                                                                                                                  pxmaudi.ToString()));
                                            }
                                            /*fin auditoria*/
                                            db.Entry(pxm).State = EntityState.Modified;
                                        }
                                        /*inicio auditoria*/
                                        if (db.Tbl_ActivaAuditoriaSistema.ToList().FirstOrDefault().EsActivaLiderazgoGerencial)
                                        {
                                            ActividadPresupuesto acps = dbaud.Tbl_Actividad_Presupuesto.Find(actividadesSecun.PK_Actividad_Presupuesto);
                                            db.Tbl_AuditoriaLiderazgoGerencialSistema.Add(auditoriaSistema.ObtenerAuditoriaLiderazgoGerencial(edInfoauditoria,
                                                                                                                                              Enumeraciones.EnumAuditoriaSistema.Acciones.MODIFICACION,
                                                                                                                                              Enumeraciones.EnumAuditoriaSistema.Modulos.Liderazgo_Gerencial,
                                                                                                                                              Enumeraciones.EnumAuditoriaSistema.SubModulos.Presupuesto,
                                                                                                                                              Enumeraciones.EnumAuditoriaSistema.Opciones.ConsultarPresupuesto,
                                                                                                                                              acps.ToString()));
                                        }
                                        /*fin auditoria*/
                                        db.Entry(actividadesSecun).State = EntityState.Modified;
                                    }
                                }
                                ac.actividadesPresupuesto = lisAux;
                            }
                            else
                            {
                                foreach (PresupuestoPorMes pxm in ac.presupuestosPorMes)
                                {
                                    /*inicio auditoria*/
                                    if (db.Tbl_ActivaAuditoriaSistema.ToList().FirstOrDefault().EsActivaLiderazgoGerencial)
                                    {
                                        PresupuestoPorMes pxmaudi = dbaud.Tbl_Presupuesto_Por_Mes.Find(pxm.PK_Prepuesto_Por_Mes);
                                        db.Tbl_AuditoriaLiderazgoGerencialSistema.Add(auditoriaSistema.ObtenerAuditoriaLiderazgoGerencial(edInfoauditoria,
                                                                                                                                          Enumeraciones.EnumAuditoriaSistema.Acciones.MODIFICACION,
                                                                                                                                          Enumeraciones.EnumAuditoriaSistema.Modulos.Liderazgo_Gerencial,
                                                                                                                                          Enumeraciones.EnumAuditoriaSistema.SubModulos.Presupuesto,
                                                                                                                                          Enumeraciones.EnumAuditoriaSistema.Opciones.ConsultarPresupuesto,
                                                                                                                                          pxmaudi.ToString()));
                                    }
                                    /*fin auditoria*/
                                    db.Entry(pxm).State = EntityState.Modified;
                                }
                            }
                            /*inicio auditoria*/
                            if (db.Tbl_ActivaAuditoriaSistema.ToList().FirstOrDefault().EsActivaLiderazgoGerencial)
                            {
                                ActividadPresupuesto acp = dbaud.Tbl_Actividad_Presupuesto.Find(ac.PK_Actividad_Presupuesto);
                                db.Tbl_AuditoriaLiderazgoGerencialSistema.Add(auditoriaSistema.ObtenerAuditoriaLiderazgoGerencial(edInfoauditoria,
                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.Acciones.MODIFICACION,
                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.Modulos.Liderazgo_Gerencial,
                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.SubModulos.Presupuesto,
                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.Opciones.ConsultarPresupuesto,
                                                                                                                                  acp.ToString()));
                            }
                            /*fin auditoria*/
                            db.Entry(ac).State = EntityState.Modified;
                        }
                        else
                        {
                            if (ac.actividadesPresupuesto != null)
                            {
                                List <ActividadPresupuesto> lisAux = ac.actividadesPresupuesto.ToList();
                                ac.actividadesPresupuesto = null;
                                db.Tbl_Actividad_Presupuesto.Add(ac);
                                foreach (ActividadPresupuesto actividadesSecun in lisAux)
                                {
                                    if (actividadesSecun.PK_Actividad_Presupuesto > 0)
                                    {
                                        foreach (PresupuestoPorMes pxm in actividadesSecun.presupuestosPorMes)
                                        {
                                            /*inicio auditoria*/
                                            if (db.Tbl_ActivaAuditoriaSistema.ToList().FirstOrDefault().EsActivaLiderazgoGerencial)
                                            {
                                                PresupuestoPorMes pxmaudi = dbaud.Tbl_Presupuesto_Por_Mes.Find(pxm.PK_Prepuesto_Por_Mes);
                                                db.Tbl_AuditoriaLiderazgoGerencialSistema.Add(auditoriaSistema.ObtenerAuditoriaLiderazgoGerencial(edInfoauditoria,
                                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.Acciones.MODIFICACION,
                                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.Modulos.Liderazgo_Gerencial,
                                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.SubModulos.Presupuesto,
                                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.Opciones.ConsultarPresupuesto,
                                                                                                                                                  pxmaudi.ToString()));
                                            }
                                            /*fin auditoria*/
                                            db.Entry(pxm).State = EntityState.Modified;
                                        }
                                        /*inicio auditoria*/
                                        if (db.Tbl_ActivaAuditoriaSistema.ToList().FirstOrDefault().EsActivaLiderazgoGerencial)
                                        {
                                            ActividadPresupuesto acps = dbaud.Tbl_Actividad_Presupuesto.Find(actividadesSecun.PK_Actividad_Presupuesto);
                                            db.Tbl_AuditoriaLiderazgoGerencialSistema.Add(auditoriaSistema.ObtenerAuditoriaLiderazgoGerencial(edInfoauditoria,
                                                                                                                                              Enumeraciones.EnumAuditoriaSistema.Acciones.MODIFICACION,
                                                                                                                                              Enumeraciones.EnumAuditoriaSistema.Modulos.Liderazgo_Gerencial,
                                                                                                                                              Enumeraciones.EnumAuditoriaSistema.SubModulos.Presupuesto,
                                                                                                                                              Enumeraciones.EnumAuditoriaSistema.Opciones.ConsultarPresupuesto,
                                                                                                                                              acps.ToString()));
                                        }
                                        /*fin auditoria*/
                                        db.Entry(actividadesSecun).State = EntityState.Modified;
                                    }
                                    else
                                    {
                                        /*inicio auditoria*/
                                        if (db.Tbl_ActivaAuditoriaSistema.ToList().FirstOrDefault().EsActivaLiderazgoGerencial)
                                        {
                                            db.Tbl_AuditoriaLiderazgoGerencialSistema.Add(auditoriaSistema.ObtenerAuditoriaLiderazgoGerencial(edInfoauditoria,
                                                                                                                                              Enumeraciones.EnumAuditoriaSistema.Acciones.CREACION,
                                                                                                                                              Enumeraciones.EnumAuditoriaSistema.Modulos.Liderazgo_Gerencial,
                                                                                                                                              Enumeraciones.EnumAuditoriaSistema.SubModulos.Presupuesto,
                                                                                                                                              Enumeraciones.EnumAuditoriaSistema.Opciones.ConsultarPresupuesto,
                                                                                                                                              actividadesSecun.ToString()));
                                        }
                                        /*fin auditoria*/
                                        db.Tbl_Actividad_Presupuesto.Add(actividadesSecun);
                                    }
                                }
                                ac.actividadesPresupuesto = lisAux;
                            }
                            else
                            {
                                /*inicio auditoria*/
                                if (db.Tbl_ActivaAuditoriaSistema.ToList().FirstOrDefault().EsActivaLiderazgoGerencial)
                                {
                                    db.Tbl_AuditoriaLiderazgoGerencialSistema.Add(auditoriaSistema.ObtenerAuditoriaLiderazgoGerencial(edInfoauditoria,
                                                                                                                                      Enumeraciones.EnumAuditoriaSistema.Acciones.CREACION,
                                                                                                                                      Enumeraciones.EnumAuditoriaSistema.Modulos.Liderazgo_Gerencial,
                                                                                                                                      Enumeraciones.EnumAuditoriaSistema.SubModulos.Presupuesto,
                                                                                                                                      Enumeraciones.EnumAuditoriaSistema.Opciones.ConsultarPresupuesto,
                                                                                                                                      ac.ToString()));
                                }
                                /*fin auditoria*/
                                db.Tbl_Actividad_Presupuesto.Add(ac);
                            }
                        }
                    }
                    ActividadPresupuesto acti = actividadesPresupuesto.FirstOrDefault();
                    if (acti.PK_Actividad_Presupuesto > 0)
                    {
                        if (acti.actividadesPresupuesto != null)
                        {
                            Presupuesto p = acti.actividadesPresupuesto.FirstOrDefault().presupuestosPorMes.FirstOrDefault().Presupuesto;
                            /*inicio auditoria*/
                            if (db.Tbl_ActivaAuditoriaSistema.ToList().FirstOrDefault().EsActivaLiderazgoGerencial)
                            {
                                db.Tbl_AuditoriaLiderazgoGerencialSistema.Add(auditoriaSistema.ObtenerAuditoriaLiderazgoGerencial(edInfoauditoria,
                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.Acciones.MODIFICACION,
                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.Modulos.Liderazgo_Gerencial,
                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.SubModulos.Presupuesto,
                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.Opciones.ConsultarPresupuesto,
                                                                                                                                  p.ToString()));
                            }
                            /*fin auditoria*/
                            db.Entry(p.presupuestosPorAnio.FirstOrDefault()).State = EntityState.Modified;
                            db.Entry(p).State = EntityState.Modified;
                        }
                        else
                        {
                            Presupuesto p = acti.presupuestosPorMes.FirstOrDefault().Presupuesto;
                            /*inicio auditoria*/
                            if (db.Tbl_ActivaAuditoriaSistema.ToList().FirstOrDefault().EsActivaLiderazgoGerencial)
                            {
                                db.Tbl_AuditoriaLiderazgoGerencialSistema.Add(auditoriaSistema.ObtenerAuditoriaLiderazgoGerencial(edInfoauditoria,
                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.Acciones.MODIFICACION,
                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.Modulos.Liderazgo_Gerencial,
                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.SubModulos.Presupuesto,
                                                                                                                                  Enumeraciones.EnumAuditoriaSistema.Opciones.ConsultarPresupuesto,
                                                                                                                                  p.ToString()));
                            }
                            /*fin auditoria*/
                            db.Entry(p.presupuestosPorAnio.FirstOrDefault()).State = EntityState.Modified;
                            db.Entry(p).State = EntityState.Modified;
                        }
                    }
                    db.SaveChanges();
                    transaction.Commit();
                    return(true);
                }
                catch (Exception ex)
                {
                    //RegistroInformacion.EnviarError<ActividadPresupuesto>(ex.Message);
                    transaction.Rollback();
                    return(false);
                }
            }
        }