Beispiel #1
0
        /// <summary>
        /// Metodo que se utiliza para modificar la informacion en la tabla Catalogo
        /// </summary>
        /// <param name="pCatalogo"></param>
        /// <returns></returns>
        public RespuestaCatalogo ModificarCatalogo(Catalogo pCatalogo)
        {
            int filasAfectadas;
            RespuestaCatalogo respuesta = new RespuestaCatalogo();

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

            //IN PARAMETERS

            database1.AddInParameter(dbCommand, parameterName(Catalogo.idCatalogoProperty), DbType.Int64, pCatalogo.IdCatalogo);
            database1.AddInParameter(dbCommand, parameterName(Catalogo.identificadorProperty), DbType.AnsiString, pCatalogo.Identificador);
            database1.AddInParameter(dbCommand, parameterName(Catalogo.codigoParametroProperty), DbType.AnsiString, pCatalogo.CodigoParametro);
            database1.AddInParameter(dbCommand, parameterName(BaseEntidad.idEntidadProperty), DbType.Boolean, pCatalogo.IdEntidad);
            database1.AddInParameter(dbCommand, parameterName(BaseEntidad.usrModificacionProperty), DbType.String, pCatalogo.UsrModificacion);

            //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.bmEditCatalogo, respuesta.Respuesta.CodMensaje);
            }

            return(respuesta);
        }
        /// <summary>
        /// Metodo que sirve para Modificar un objeto de tipo Catalogo
        /// </summary>
        /// <param name="pCatalogo"></param>
        /// <returns></returns>
        public RespuestaCatalogo ModificarCatalogo(Catalogo pCatalogo)
        {
            var respuesta = new RespuestaCatalogo();

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

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

                    pCatalogo.IdEntidad = respS.Sesion.IdEntidad;
                    if (ValidacionesModificacion(pCatalogo, ref mensajes))
                    {
                        respuesta = dal.ModificarCatalogo(pCatalogo);
                        BitacoraLogicaNegocios.RegistrarBitacora(MENSAJES_SISTEMA.RespuestaModificar,
                                                                 TraceData.Utilities.Enums.TypeTrace.Info, respuesta, MethodBase.GetCurrentMethod().Name);
                        Notificacion(pCatalogo, CodigoAlerta);
                    }
                    else
                    {
                        //NO COMPLETA LA VALIDACION, SE ENVIAN DE REGRESO LOS MENSAJES
                        respuesta = new RespuestaCatalogo {
                            Respuesta = new Respuesta(Respuesta.CodNoValido), Catalogo = respuesta.Catalogo
                        };
                    }
                    return(respuesta);
                }
                else
                {
                    return new RespuestaCatalogo {
                               Respuesta = respS.Respuesta, Catalogo = new Catalogo()
                    }
                };
            }
            catch (Exception ex)
            {
                ControlExcepciones.ControlExcepciones.ManejoExcepciones(ex, pCatalogo);

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

                return(new RespuestaCatalogo {
                    Respuesta = new Respuesta(TipoRespuesta.Excepcion, ex.Message, Respuesta.CodNoValido)
                });
            }
        }
        /// <summary>
        /// Metodo que sirve para Obtener un Catalogo
        /// </summary>
        /// <param name="pCatalogo">Filtro de tipo Catalogo</param>
        /// <returns></returns>
        public RespuestaCatalogo ObtenerCatalogo(Catalogo pCatalogo)
        {
            var respuesta = new RespuestaCatalogo();

            try
            {
                RespuestaSesion respS = sesion.ObtenerSesion(new Sesion()
                {
                    Token = pCatalogo.UsrtokensAuthenticate
                });
                pCatalogo.IdEntidad = respS.Sesion.IdEntidad;
                if (respS.Respuesta.CodMensaje == Respuesta.CodExitoso)
                {
                    respuesta.Catalogo = dal.ObtenerCatalogos(pCatalogo).ListaCatalogo?[0];

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

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

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