Exemplo n.º 1
0
        /// <summary>
        /// Metodo que se encarga de eliminar o desactivar un registro  de la tabla Rol
        /// </summary>
        /// <param name="pRol"></param>
        /// <returns></returns>
        public RespuestaRol EliminarRol(Rol pRol)
        {
            int          filasAfectadas;
            RespuestaRol respuesta = new RespuestaRol();

            //STRORE PROCEDURE DEFINITION
            DbCommand dbCommand = database1.GetStoredProcCommand(defaultSchema + StoredProcedure.EliminarRol);

            //IN PARAMETERS
            database1.AddInParameter(dbCommand, parameterName(Rol.idRolProperty), DbType.Int64, pRol.IdRol);

            //OUT PARAMETERS
            database1.AddOutParameter(dbCommand, parameterName(BaseEntidad.codErrorProperty), DbType.String, Constantes.BaseDatos.codErrorTamano);
            database1.AddOutParameter(dbCommand, parameterName(BaseEntidad.mensajeProperty), DbType.String, Constantes.BaseDatos.mensajeTamano);

            filasAfectadas = database1.ExecuteNonQuery(dbCommand);

            //ERROR CODE AND MESSAGE COLLECTOR
            respuesta.Respuesta            = new Respuesta();
            respuesta.Respuesta.CodMensaje = DBHelper.ReadNullSafeString(database1.GetParameterValue(dbCommand, parameterName(BaseEntidad.codErrorProperty)));
            respuesta.Respuesta.Mensaje    = DBHelper.ReadNullSafeString(database1.GetParameterValue(dbCommand, parameterName(BaseEntidad.mensajeProperty)));

            if (respuesta.Respuesta.CodMensaje == Respuesta.CodExitoso)
            {
                respuesta.Respuesta = new Respuesta(Mensajes.bmDeleteRol, respuesta.Respuesta.CodMensaje);
            }

            return(respuesta);
        }
Exemplo n.º 2
0
        /// <summary>
        /// Metodo que sirve para Modificar un objeto de tipo Rol
        /// </summary>
        /// <param name="pRol"></param>
        /// <returns></returns>
        public RespuestaRol ModificarRol(Rol pRol)
        {
            var respuesta = new RespuestaRol();

            try
            {
                string        CodigoAlerta = "RolEdit";
                List <string> mensajes     = new List <string>();

                RespuestaSesion respS = sesion.ObtenerSesion(new Sesion()
                {
                    Token = pRol.UsrtokensAuthenticate
                });
                if (respS.Respuesta.CodMensaje == Respuesta.CodExitoso)
                {
                    //VALIDACION: Entidad no puede venir vacio
                    pRol.UsrModificacion = respS.Sesion.CodigoUsuario;

                    if (ValidacionesModificacion(pRol, ref mensajes))
                    {
                        //obtenemos la lista de roles
                        pRol.XMLData = Util.SerializarObjeto(pRol.Perfiles);

                        respuesta = dal.ModificarRol(pRol);
                        BitacoraLogicaNegocios.RegistrarBitacora(MENSAJES_SISTEMA.RespuestaModificar,
                                                                 TraceData.Utilities.Enums.TypeTrace.Info, respuesta, MethodBase.GetCurrentMethod().Name);
                        Notificacion(pRol, CodigoAlerta);
                    }
                    else
                    {
                        //NO COMPLETA LA VALIDACION, SE ENVIAN DE REGRESO LOS MENSAJES
                        respuesta = new RespuestaRol {
                            Respuesta = new Respuesta(Respuesta.CodNoValido), Rol = respuesta.Rol
                        };
                    }
                    return(respuesta);
                }
                else
                {
                    return new RespuestaRol {
                               Respuesta = respS.Respuesta, Rol = new Rol()
                    }
                };
            }
            catch (Exception ex)
            {
                ControlExcepciones.ControlExcepciones.ManejoExcepciones(ex, pRol);

                BitacoraLogicaNegocios.RegistrarBitacora(MENSAJES_SISTEMA.ErrorExcepcion,
                                                         TraceData.Utilities.Enums.TypeTrace.Exception, ex, MethodBase.GetCurrentMethod().Name);

                return(new RespuestaRol {
                    Respuesta = new Respuesta(TipoRespuesta.Excepcion, ex.Message, Respuesta.CodNoValido)
                });
            }
        }
Exemplo n.º 3
0
        /// <summary>
        /// Metodo que sirve para Obtener la lista de tipo Rol
        /// </summary>
        /// <param name="pRol">Filtro de tipo Rol</param>
        /// <returns></returns>
        public RespuestaRol ObtenerRol(Rol pRol)
        {
            var respuesta = new RespuestaRol();

            try
            {
                RespuestaSesion respS = sesion.ObtenerSesion(new Sesion()
                {
                    Token = pRol.UsrtokensAuthenticate
                });
                if (respS.Respuesta.CodMensaje == Respuesta.CodExitoso)
                {
                    respuesta.Rol = dal.ObtenerRol(pRol).ListaRol?[0];

                    return(respuesta.Rol != null ?
                           new RespuestaRol {
                        Respuesta = new Respuesta(string.Empty, Respuesta.CodExitoso), Rol = respuesta.Rol
                    } :
                           new RespuestaRol {
                        Respuesta = new Respuesta(Respuestas.GI03, Respuesta.CodExitoso), Rol = new Rol()
                    });
                }
                else
                {
                    return new RespuestaRol {
                               Respuesta = respS.Respuesta, Rol = new Rol()
                    }
                };
            }
            catch (Exception ex)
            {
                ControlExcepciones.ControlExcepciones.ManejoExcepciones(ex, pRol);

                BitacoraLogicaNegocios.RegistrarBitacora(MENSAJES_SISTEMA.ErrorExcepcion,
                                                         TraceData.Utilities.Enums.TypeTrace.Exception, ex, MethodBase.GetCurrentMethod().Name);

                return(new RespuestaRol {
                    Respuesta = new Respuesta(TipoRespuesta.Excepcion, ex.Message, Respuesta.CodNoValido)
                });
            }
        }
Exemplo n.º 4
0
        /// <summary>
        /// Inserta informacion en la tabla Rol
        /// </summary>
        /// <param name="pRol"></param>
        /// <returns></returns>
        public RespuestaRol InsertarRol(Rol pRol)
        {
            int filasAfectadas;

            RespuestaRol respuesta = new RespuestaRol();

            //STRORE PROCEDURE DEFINITION
            DbCommand dbCommand = database1.GetStoredProcCommand(defaultSchema + StoredProcedure.InsertarRol);

            //IN PARAMETERS

            database1.AddInParameter(dbCommand, parameterName(Rol.nombreProperty), DbType.AnsiString, pRol.Nombre);
            database1.AddInParameter(dbCommand, parameterName(Rol.estadoProperty), DbType.String, pRol.Estado);
            database1.AddInParameter(dbCommand, parameterName(BaseEntidad.idEntidadProperty), DbType.Int64, pRol.IdEntidad);
            database1.AddInParameter(dbCommand, parameterName(BaseEntidad.xmlDataProperty), DbType.Xml, pRol.XMLData);
            database1.AddInParameter(dbCommand, parameterName(BaseEntidad.usrCreacionProperty), DbType.String, pRol.UsrCreacion);
            database1.AddInParameter(dbCommand, parameterName(BaseEntidad.nombreControladorProperty), DbType.String, pRol.NombreControlador);

            //OUT PARAMETERS
            database1.AddOutParameter(dbCommand, parameterName(Rol.idRolProperty), DbType.Int64, 35);
            database1.AddOutParameter(dbCommand, parameterName(BaseEntidad.codErrorProperty), DbType.String, Constantes.BaseDatos.codErrorTamano);
            database1.AddOutParameter(dbCommand, parameterName(BaseEntidad.mensajeProperty), DbType.String, Constantes.BaseDatos.mensajeTamano);

            //EXECUTE PROCEDURE
            filasAfectadas = database1.ExecuteNonQuery(dbCommand);

            //ERROR CODE AND MESSAGE COLLECTOR
            respuesta.Respuesta            = new Respuesta();
            respuesta.Respuesta.CodMensaje = DBHelper.ReadNullSafeString(database1.GetParameterValue(dbCommand, parameterName(BaseEntidad.codErrorProperty)));
            respuesta.Respuesta.Mensaje    = DBHelper.ReadNullSafeString(database1.GetParameterValue(dbCommand, parameterName(BaseEntidad.mensajeProperty)));

            if (respuesta.Respuesta.CodMensaje == Respuesta.CodExitoso)
            {
                pRol.IdRol          = DBHelper.ReadNullSafeInt(database1.GetParameterValue(dbCommand, parameterName(Rol.idRolProperty)));
                respuesta.Respuesta = new Respuesta(Mensajes.bmCreateRol, respuesta.Respuesta.CodMensaje);
                respuesta.Rol       = pRol;
            }

            return(respuesta);
        }
Exemplo n.º 5
0
        /// <summary>
        /// Metodo para insertar un valor de tipo Rol
        /// </summary>
        /// <param name="pRol"></param>
        /// <returns></returns>
        public RespuestaRol InsertarRol(Rol pRol)
        {
            var respuesta = new RespuestaRol();

            try
            {
                string        CodigoAlerta = "RolCreate";
                List <string> mensajes     = new List <string>();

                RespuestaSesion respS = sesion.ObtenerSesion(new Sesion()
                {
                    Token = pRol.UsrtokensAuthenticate
                });
                if (respS.Respuesta.CodMensaje == Respuesta.CodExitoso)
                {
                    pRol.UsrCreacion = respS.Sesion.CodigoUsuario;
                    //EJECUTAR: se guarda la entidad
                    if (ValidacionesCreacion(pRol, ref mensajes))
                    {
                        //obtenemos la lista de roles
                        pRol.XMLData = Util.SerializarObjeto(pRol.Perfiles);

                        respuesta = dal.InsertarRol(pRol);
                        BitacoraLogicaNegocios.RegistrarBitacora(MENSAJES_SISTEMA.RespuestaInsertar,
                                                                 TraceData.Utilities.Enums.TypeTrace.Info, respuesta, MethodBase.GetCurrentMethod().Name);

                        //Se valida error
                        if (respuesta.Respuesta.CodMensaje != Respuesta.CodExitoso)
                        {
                            //se procede a obtener el mensaje del error
                            var oResp = new Respuesta(respuesta.Respuesta.CodMensaje);

                            if (string.IsNullOrEmpty(oResp.Mensaje))
                            {
                                oResp.Mensaje = Mensajes.msjErrorGenerico;
                            }
                            respuesta.Respuesta = oResp;
                            return(respuesta);
                        }

                        Notificacion(pRol, CodigoAlerta);

                        //****Se envia a crear la primera autorización***
                        Task.Factory.StartNew(() => InsertarAutorizacion(respuesta.Rol));
                        //***********************************************
                    }
                    else
                    {
                        //NO COMPLETA LA VALIDACION, SE ENVIAN DE REGRESO LOS MENSAJES
                        respuesta = new RespuestaRol {
                            Respuesta = new Respuesta(Respuesta.CodNoValido), Rol = respuesta.Rol
                        };
                    }
                    return(respuesta);
                }
                else
                {
                    return new RespuestaRol {
                               Respuesta = respS.Respuesta, Rol = new Rol()
                    }
                };
            }
            catch (Exception ex)
            {
                ControlExcepciones.ControlExcepciones.ManejoExcepciones(ex, pRol);

                BitacoraLogicaNegocios.RegistrarBitacora(MENSAJES_SISTEMA.ErrorExcepcion,
                                                         TraceData.Utilities.Enums.TypeTrace.Exception, ex, MethodBase.GetCurrentMethod().Name);

                return(new RespuestaRol {
                    Respuesta = new Respuesta(TipoRespuesta.Excepcion, ex.Message, Respuesta.CodNoValido)
                });
            }
        }