示例#1
0
        public async Task <ActionResult> validarListaDniAgregarAlGrupo(List <List <string> > documentosAValidar)
        {
            //int? dni = null;
            string dni           = "";
            var    dniExistentes = new List <List <string> >();

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

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

                    if (String.IsNullOrEmpty(item[4]))
                    {
                        if (!String.IsNullOrEmpty(item[3]))
                        {
                            dni = Convert.ToString(item[3]);
                            var nombre   = item[1];
                            var apellido = item[2];
                            if (context.Denunciantes.Where(d => String.Equals(d.NroDocumento.Trim(), dni.Trim()) &&
                                                           (!d.nombre.Contains(nombre) ||
                                                            !d.apellido.Contains(apellido))).Any())
                            {
                                dniExistentes.Add(item);
                            }
                        }
                        nuevoDenunciante.nombre   = item[1].ToUpper();
                        nuevoDenunciante.apellido = item[2].ToUpper();


                        context.Add(nuevoDenunciante);
                        await context.SaveChangesAsync();
                    }
                    else
                    {
                        var idExistente = Convert.ToInt32(item[4]);
                        nuevoDenunciante = await context.Denunciantes.Where(d => d.DenuncianteId == idExistente).FirstOrDefaultAsync();
                    }
                    denunciantes.Add(nuevoDenunciante);
                }
                if (dniExistentes.Count > 0)
                {
                    return(Json("Verifique los Nros de Documentos : " + dniExistentes));
                }

                grupo.grupoDenunciantes      = denunciantes;
                grupo.IdDenunciantePrincipal = denunciantes[0].DenuncianteId;
                context.Add(grupo);
                await context.SaveChangesAsync();
            }

            return(PartialView("ListGrupoDenunciantes", grupo));
        }
示例#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);
        }
示例#3
0
        public async Task <ActionResult> AgregarNuevosDenunciantes(List <List <string> > lista, int idGrupo)
        {
            var dniExistentes = new List <List <string> >();

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

            using (NuevoDbContext context = new NuevoDbContext())
            {
                foreach (var item in lista)
                {
                    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);
                    }
                }

                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));
                }

                //auditoria
                foreach (var item in denunciantes)
                {
                    var fechaCreacionGrupoAuditoria = DateTime.Now;
                    var objetoModificado            = "GRUPO";
                    var descripcionObjeto           = "Se agregó al Denunciante con Id : " + item.DenuncianteId + " al grupo Id : " + idGrupo.ToString();
                    var valorAnterior = "";
                    var valorActual   = "";
                    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", idGrupo));
                }
            }
            return(RedirectToAction("TraerGrupoDenunciantes", "Denunciantes", new { grupoId = idGrupo }));
        }