예제 #1
0
        public ActionResult TraerGrupoDenunciantes(int?grupoId)
        {
            GrupoSP grupo = new GrupoSP();

            if (grupoId != null || grupoId > 0)
            {
                using (NuevoDbContext context = new NuevoDbContext())
                {
                    List <DenuncianteGrupoSP> grupoDenunciantes = context.Database
                                                                  .SqlQuery <DenuncianteGrupoSP>("GetGrupoDenunciantesPorIdGrupo @grupoId", new SqlParameter("@grupoId", grupoId))
                                                                  .ToList();

                    //grupo.Id = grupoDenunciantes.First().GrupoDto_Id;
                    grupo.Id = int.Parse(grupoId.Value.ToString());
                    grupo.grupoDenunciantes = grupoDenunciantes;
                    //var idPrincipal = context.Grupos.Find(grupoId).IdDenunciantePrincipal;
                    //grupo.DenunciantePrincipal = context.Denunciantes.Find(idPrincipal);
                }
            }


            return(PartialView("ListGrupoDenunciantesSP", grupo));

            //return PartialView("GrupoDenunciantes");
        }
예제 #2
0
        public async Task <ActionResult> validarListaDni(List <List <string> > documentosAValidar)
        {
            var dniExistentes = new List <List <string> >();

            List <DenuncianteDto> denunciantes = new List <DenuncianteDto>();
            var     grupo   = new GrupoDto();
            GrupoSP grupoSP = new GrupoSP();

            using (NuevoDbContext context = new NuevoDbContext())
            {
                foreach (var item in documentosAValidar)
                {
                    DenuncianteDto nuevoDenunciante = new DenuncianteDto();

                    if (String.IsNullOrEmpty(item[4]))
                    {
                        nuevoDenunciante.nombre       = item[1].ToUpper();
                        nuevoDenunciante.apellido     = item[2].ToUpper();
                        nuevoDenunciante.NroDocumento = item[3];

                        var denuncianteExistente = await context.Denunciantes.Where(d => String.Equals(d.NroDocumento.Trim(), nuevoDenunciante.NroDocumento.Trim()) &&
                                                                                    String.Equals(d.nombre.Trim(), nuevoDenunciante.nombre.Trim()) &&
                                                                                    String.Equals(d.apellido.Trim(), nuevoDenunciante.apellido.Trim()))
                                                   .FirstOrDefaultAsync();

                        if (denuncianteExistente == null)
                        {
                            context.Add(nuevoDenunciante);
                            await context.SaveChangesAsync();

                            denunciantes.Add(nuevoDenunciante);
                        }
                        else
                        {
                            denunciantes.Add(denuncianteExistente);
                        }
                    }
                    else
                    {
                        var idExistente = Convert.ToInt32(item[4]);
                        nuevoDenunciante = await context.Denunciantes.Where(d => d.DenuncianteId == idExistente).FirstOrDefaultAsync();

                        denunciantes.Add(nuevoDenunciante);
                    }
                    //denunciantes.Add(nuevoDenunciante);
                }


                //grupo.grupoDenunciantes = denunciantes; comentado 12/05/2020
                grupo.IdDenunciantePrincipal = denunciantes[0].DenuncianteId;
                context.Add(grupo);
                await context.SaveChangesAsync();

                //agregado 12/05/2020
                var idGrupo = grupo.Id;
                foreach (var item in denunciantes)
                {
                    var fechaCreacion = DateTime.Now;
                    context.Database
                    .ExecuteSqlCommand("Insert into GrupoDenunciantesRel values(@GrupoDto_Id,@DenuncianteId,@fechaCreacion)"
                                       , new SqlParameter("@GrupoDto_Id", idGrupo)
                                       , new SqlParameter("@DenuncianteId", item.DenuncianteId)
                                       , new SqlParameter("@fechaCreacion", fechaCreacion));
                }
                List <DenuncianteGrupoSP> grupoDenunciantes = context.Database
                                                              .SqlQuery <DenuncianteGrupoSP>("GetGrupoDenunciantesPorIdGrupo @grupoId", new SqlParameter("@grupoId", idGrupo))
                                                              .ToList();

                grupoSP.Id = grupoDenunciantes.First().GrupoDto_Id;
                grupoSP.grupoDenunciantes = grupoDenunciantes;

                // auditoria

                var fechaCreacionGrupoAuditoria = DateTime.Now;
                var objetoModificado            = "GRUPO";
                var descripcionObjeto           = "Se ha creado al grupoId : " + grupoSP.Id.ToString();
                var valorAnterior = "";
                var valorActual   = "Cantidad de Integrantes : " + grupoSP.grupoDenunciantes.Count.ToString();
                var usuario       = System.Web.HttpContext.Current.User.Identity.Name;

                context.Database
                .ExecuteSqlCommand("Insert into tCommonChLogger values(@fechaCreacionGrupo,@objetoModificado,@descripcionObjeto,@valorAnterior,@valorActual,@usuario,@GrupoDto_Id)"
                                   , new SqlParameter("@fechaCreacionGrupo", fechaCreacionGrupoAuditoria)
                                   , new SqlParameter("@objetoModificado", objetoModificado)
                                   , new SqlParameter("@descripcionObjeto", descripcionObjeto)
                                   , new SqlParameter("@valorAnterior", valorAnterior)
                                   , new SqlParameter("@valorActual", valorActual)
                                   , new SqlParameter("@usuario", usuario)
                                   , new SqlParameter("@GrupoDto_Id", grupoSP.Id));
            }
            return(PartialView("ListGrupoDenunciantesSP", grupoSP));
            //return PartialView("ListGrupoDenunciantes", grupo);
        }