public void Validate(GrupoDto dto, bool delete) { if (SessionUser.IdPapel != PapelUsuarioEnum.Administrador) { throw new ApplicationException("Você não possui permissão para executar esta operação."); } if (!delete) { if (dto.Numero <= 0) { throw new ApplicationException("Grupo: O campo 'Número' não foi informado corretamente."); } if (dto.IdEspecialidade == 0) { throw new ApplicationException("Grupo: O campo 'Especialidade' é obrigatório."); } if (new GrupoRepository().IsGrupoRepetido(dto.Id, dto.Numero)) { throw new ApplicationException("Grupo: Já existe um registro de grupo com o número informado."); } } else { if (new GrupoRepository().GrupoPossuiVinculos(dto.Id)) { throw new ApplicationException("Não é permitido excluir o registro pois o mesmo possui vínculos."); } } }
public IHttpActionResult EliminarGrupo([FromBody] GrupoDto grupo) { try { seguridadNegocio = new SeguridadNegocio(); string res = seguridadNegocio.CreaModificaGrupo("D", grupo); return(Content(HttpStatusCode.OK, new Mensaje() { codigoRespuesta = Catalogo.OK, mensajeRespuesta = "", objetoRespuesta = res })); } catch (ExcepcionOperacion exOp) { return(Content(HttpStatusCode.InternalServerError, new Mensaje() { codigoRespuesta = Catalogo.ERROR, mensajeRespuesta = Catalogo.FALLO_CONSULTA_GRUPO + exOp.Message })); } catch (Exception ex) { return(Content(HttpStatusCode.InternalServerError, new Mensaje() { codigoRespuesta = Catalogo.ERROR, mensajeRespuesta = Catalogo.FALLO_CONSULTA_GRUPO + ex.Message })); } }
public DataTable CrudGrupo(string tipoTrans, GrupoDto grupo) { using (SqlConnection conn = new SqlConnection(Util.ObtenerCadenaConexion("POS_DB"))) { try { string spName = @"[dbo].[prcSegGrupo]"; SqlCommand cmd = new SqlCommand(spName, conn); SqlParameter transaccion = new SqlParameter("@p_transaccion", SqlDbType.VarChar); transaccion.Value = tipoTrans; SqlParameter idgrupo = new SqlParameter("@p_id_grupo", SqlDbType.Int); idgrupo.Value = grupo.id; SqlParameter tag = new SqlParameter("@p_tag", SqlDbType.VarChar); tag.Value = grupo.tag; SqlParameter nombre = new SqlParameter("@p_nombre", SqlDbType.VarChar); nombre.Value = grupo.nombre; SqlParameter descripcion = new SqlParameter("@p_descripcion", SqlDbType.VarChar); descripcion.Value = grupo.descripcion; SqlParameter rutaicono = new SqlParameter("@p_ruta_icono", SqlDbType.VarChar); rutaicono.Value = grupo.icono; SqlParameter idmenu = new SqlParameter("@p_id_menu", SqlDbType.Int); idmenu.Value = grupo.idMenu; SqlParameter activo = new SqlParameter("@p_activo", SqlDbType.Int); activo.Value = Convert.ToInt16(grupo.activo); SqlParameter usuario = new SqlParameter("@p_usuario", SqlDbType.VarChar); usuario.Value = "POS"; cmd.Parameters.Add(transaccion); cmd.Parameters.Add(idgrupo); cmd.Parameters.Add(tag); cmd.Parameters.Add(nombre); cmd.Parameters.Add(descripcion); cmd.Parameters.Add(rutaicono); cmd.Parameters.Add(idmenu); cmd.Parameters.Add(activo); cmd.Parameters.Add(usuario); DataTable tblMenu = new DataTable(); conn.Open(); cmd.CommandType = CommandType.StoredProcedure; SqlDataAdapter da = new SqlDataAdapter(cmd); da.ReturnProviderSpecificTypes = true; da.Fill(tblMenu); da.Dispose(); conn.Close(); return(tblMenu); } catch (Exception) { throw; } } }
public GrupoDto Criar(Guid siteId, GrupoDto grupoDto) { if (grupoDto.Id != Guid.Empty) throw new FormatoInvalido("O identificador de grupo não deve ser informado neste contexto."); var grupo = _fabricaGrupo.Criar(siteId, Guid.NewGuid(), grupoDto); _repositorioGrupos.Inserir(grupo); return _fabricaGrupoDto.Criar(grupo); }
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)); }
public bool SaveGrupo(GrupoDto dto) { Contexto.Grupo.Add(new Grupo() { IdEspecialidade = dto.IdEspecialidade, Numero = dto.Numero }); Contexto.SaveChanges(); return(true); }
public string CreaModificaGrupo(string trans, GrupoDto grupo) { using (UnitOfWork uow = new UnitOfWork()) { DataTable tblMenu = uow.AccesosRepositorio.CrudGrupo(trans, grupo); if (tblMenu.Rows[0]["ID"].ToString() != "1") { throw new Exception(tblMenu.Rows[0]["Mensaje"].ToString()); } return(tblMenu.Rows[0]["Mensaje"].ToString()); } }
public bool EditGrupo(GrupoDto dto) { var grupo = (from g in Contexto.Grupo where g.Id == dto.Id select g).FirstOrDefault(); grupo.IdEspecialidade = dto.IdEspecialidade; grupo.Numero = dto.Numero; Contexto.SaveChanges(); return(true); }
public List <GrupoDto> ConsultarGrupo() { using (UnitOfWork uow = new UnitOfWork()) { GrupoDto menu = new GrupoDto(-1, "", "", "", "", true); DataTable tblMenu = uow.AccesosRepositorio.CrudGrupo("C", menu); List <GrupoDto> listMenu = new List <GrupoDto>(); GrupoDto menuTemp; foreach (DataRow dr in tblMenu.Rows) { menuTemp = new GrupoDto(dr); listMenu.Add(menuTemp); } return(listMenu); } }
public void LocalizarCorretamentePorIdQuandoTudoEstiverOk() { //Arrange var repositorio = new Mock<RepositorioGrupos>(); var mapper = new Mock<FabricaGrupoDto>(); var id = Guid.NewGuid(); var grupoEsperado = new Grupo(id, "Grupo"); var grupoRetornadoMapper = new GrupoDto { Id = grupoEsperado.Id, Nome = grupoEsperado.Nome }; repositorio.Setup(x => x.BuscarPorId(It.IsAny<Guid>(), It.IsAny<Guid>())).Returns(grupoEsperado); mapper.Setup(x => x.Criar(It.IsAny<Grupo>())).Returns(grupoRetornadoMapper); //Action var grupoRetornado = new LocalizadorGrupo(repositorio.Object, mapper.Object, new Mock<FabricaSumarioSituacaoDto>().Object).Localizar(Guid.NewGuid(), id.ToString()); //Asserts grupoRetornado.Id.Should().Be(grupoEsperado.Id); grupoRetornado.Nome.Should().BeEquivalentTo(grupoEsperado.Nome); }
public void FazerOEsperadoQuandoTudoEstiverOk() { //Arrange var repositorio = new Mock<RepositorioGrupos>(); var mapper = new Mock<FabricaGrupo>(); var id = Guid.NewGuid(); var grupoEsperado = new ConstrutorGrupo().Construir(); var grupoRecebido = new GrupoDto {Id = id, Nome = "Grupo"}; repositorio.Setup(x => x.BuscarPorId(It.IsAny<Guid>(), It.IsAny<Guid>())).Returns(grupoEsperado); repositorio.Setup(x => x.Editar(grupoEsperado)); mapper.Setup(x => x.Criar(Guid.NewGuid(), grupoRecebido)).Returns(grupoEsperado); //Action Action acao = () => new ModificadorGrupo(repositorio.Object, mapper.Object).Modificar(Guid.NewGuid(), id.ToString(), grupoRecebido); //Asserts acao.ShouldNotThrow(); }
public async Task <IHttpActionResult> Put(GrupoDto grupos) { if (category == null) { return(BadRequest(String.Format(Resources.RequestEmpty, _element))); } var principal = RequestContext.Principal as ClaimsPrincipal; category.UserModificatorId = principal.Identity.GetUserId(); var res = this._servicio.Put(category).Result; switch (res) { case -1: return(BadRequest(String.Format(Resources.UpdateError, _element))); default: return(Ok(String.Format(Resources.UpdateOk, _element))); } }
public void LocalizarCorretamenteTodosQuandoTudoEstiverOk() { //Arrange var repositorio = new Mock<RepositorioGrupos>(); var mapper = new Mock<FabricaGrupoDto>(); var id = Guid.NewGuid(); var grupoRetornadoDoBanco = new Grupo(id, "Grupo"); var gruposRetornadosDoBanco = new List<Grupo> { grupoRetornadoDoBanco }; var grupoRetornadoMapper = new GrupoDto { Id = grupoRetornadoDoBanco.Id, Nome = grupoRetornadoDoBanco.Nome }; var gruposRetornadosMapper = new List<GrupoDto> { grupoRetornadoMapper }; repositorio.Setup(x => x.Buscar(Guid.NewGuid(), null)).Returns(gruposRetornadosDoBanco); mapper.Setup(x => x.Criar(It.IsAny<IEnumerable<Grupo>>())).Returns(gruposRetornadosMapper); //Action var gruposRetornados = new LocalizadorGrupo(repositorio.Object, mapper.Object, new Mock<FabricaSumarioSituacaoDto>().Object).Localizar(Guid.NewGuid()); //Asserts gruposRetornados.Where(x => x.Id == grupoRetornadoDoBanco.Id).Should().NotBeNullOrEmpty(); }
public async Task <IHttpActionResult> Post(GrupoDto grupos) { if (category == null) { return(BadRequest(String.Format(Resources.RequestEmpty, _element))); } var principal = RequestContext.Principal as ClaimsPrincipal; category.UserCreatorId = principal.Identity.GetUserId(); category.UserModificatorId = principal.Identity.GetUserId(); var res = this._servicio.Post(category).Result; if (res > 0) { return(Ok(String.Format(Resources.SaveOk, _element))); } else { return(BadRequest(String.Format(Resources.SaveError, _element))); } }
public async Task <ActionResult> validarDniDenunciantesNuevos(List <List <string> > documentosAValidar)/*(string nombre, string apellido, int? dni)*/ { List <string> documentos = new List <string>(); foreach (var item in documentosAValidar) { if (!String.IsNullOrEmpty(item[3])) { documentos.Add(item[3]); } } var cantidadDuplicados = verificarDuplicados(documentos); if (cantidadDuplicados.Any()) { return(Json("<div class='alert alert-danger text-center'>Verifique los datos ingresados. Existen Números de Identidad duplicados. Total de casos : " + cantidadDuplicados.Count + "</div>")); //return JavaScript("<script>toastr.error('Verifique los datos ingresados<br/>Existen Nros. de Identidad duplicados. Total de casos : " + cantidadDuplicados.Count + "')</script>"); } // var datosDenunciantes = new List <List <string> >(); foreach (var item in documentosAValidar) { if (String.IsNullOrEmpty(item[4]) && String.IsNullOrEmpty(item[3])) { datosDenunciantes.Add(item); } } var cantidadDatosDuplicados = verificarDatosDuplicados(datosDenunciantes); if (cantidadDatosDuplicados.Any()) { return(Json("<div class='alert alert-danger text-center'>Verifique los datos ingresados. Existen Denunciantes con el mismo nombre y apellido. Los mismos no poseen dni por lo cual no se pueden diferenciar. El grupo no puede contener duplicados . Total de casos : " + cantidadDatosDuplicados.Count + "<div>")); /*Total de casos : " + cantidadDatosDuplicados.Count*/ //return JavaScript("<script>toastr.error('Verifique los datos ingresados<br/>Existen Denuciantes duplicados. Total de casos : " + cantidadDatosDuplicados.Count + "')</script>"); //return Json("Existen Denunciantes con nombre y apellido duplicados. Los mismos no poseen dni"); /*Total de casos : " + cantidadDatosDuplicados.Count*/ } // 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])) { var nombre = item[1]; var apellido = item[2]; var dni = item[3]; if (context.Denunciantes.Any(d => String.Equals(d.NroDocumento.Trim(), dni.Trim()))) { dniExistentes.Add(item); } } } } } if (dniExistentes.Count > 0) { return(PartialView("WarningDniExistentes", dniExistentes)); } else { return(JavaScript("<script>validarNuevosDenunciantesGrupo();</script>")); } }
public bool IncluirUsuario(UsuarioInclusaoDto usuario) { if (usuario.Senha != usuario.ConfirmacaoSenha) { throw new ArgumentException(MensagensErro.UsuarioFalhaConfirmacaoSenha); } DateTime dataAtual = DateTime.Now; GrupoDto grupo = _grupoServico.PesquisarGrupoPorId(usuario.IdGrupo); if (grupo == null) { throw new ArgumentException(MensagensErro.UsuarioGrupoNaoEncontrado); } var grupoDominio = new GrupoDm(grupo.Id, grupo.Nome, grupo.Descricao, grupo.Pai); grupoDominio.DefinirMensagens(_mensagens); var pessoa = _pessoaServico.PesquisarPessoaPorId(usuario.IdPessoa); if (pessoa == null) { throw new ArgumentException(MensagensErro.UsuarioPessoaNaoEncontrada); } var pessoaDominio = new PessoaDm(pessoa.Id, pessoa.Nome, pessoa.Cpf, pessoa.Email, pessoa.Telefone); pessoaDominio.DefinirMensagens(_mensagens); var dominio = new UsuarioDm( 0, usuario.Usuario, usuario.Senha, dataAtual, true, dataAtual, usuario.DiasRenovacao, grupoDominio, pessoaDominio ); dominio.ValidarDados(); if (_mensagens.PossuiFalhasValidacao()) { throw new RegraNegocioException(MensagensErro.RegraNegocioErroValidacao); } var usuarioBanco = new UsuarioDpo( dominio.Id, dominio.Usuario, dominio.Senha.ValorCriptografado, dataAtual, dataAtual, dominio.DiasRenovacao, dominio.Ativo, dominio.Grupo.Id, dominio.Pessoa.Id ); var sucessoInsercao = _UsuarioRepositorio.InserirUsuario(usuarioBanco); if (!sucessoInsercao) { _mensagens.AdicionarMensagem(TipoMensagem.Erro, MensagensErro.UsuarioFalhaInclusao); } _mensagens.AdicionarMensagem(MensagensErro.UsuarioSucessoInclusao); return(sucessoInsercao); }
public void Modificar(Guid siteId, string id, GrupoDto grupoDto) { Validar(siteId, id); _repositorioGrupos.Editar(_fabricaGrupo.Criar(siteId, id.ParaGuid(), grupoDto)); }
public virtual Grupo Criar(Guid siteId, GrupoDto grupoDto) { return Criar(siteId, grupoDto.Id, grupoDto); }
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 })); }
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); }
public virtual Grupo Criar(Guid siteId, Guid id, GrupoDto grupoDto) { return new Grupo(siteId, id, grupoDto.Nome); }