public int Insertar(TurnoInfo turnoInfo)
        {
            int resultado;

            try
            {
                using (var oConnection = new SqlConnection(HelperAccesoDatos.GetCadenaConexion()))
                {
                    var sqlComando = new SqlCommand {
                        Connection = oConnection, CommandText = "InsertarTurno", CommandType = CommandType.StoredProcedure
                    };

                    sqlComando.Parameters.Add("TurnoId", SqlDbType.Int).Value           = turnoInfo.TurnoId;
                    sqlComando.Parameters.Add("Codigo", SqlDbType.VarChar).Value        = turnoInfo.Codigo;
                    sqlComando.Parameters.Add("Nombre", SqlDbType.VarChar).Value        = turnoInfo.Nombre;
                    sqlComando.Parameters.Add("HoraInicio", SqlDbType.VarChar).Value    = turnoInfo.HoraInicio;
                    sqlComando.Parameters.Add("HoraFin", SqlDbType.VarChar).Value       = turnoInfo.HoraFin;
                    sqlComando.Parameters.Add("Activo", SqlDbType.Int).Value            = turnoInfo.Activo;
                    sqlComando.Parameters.Add("UsuarioCreacionId", SqlDbType.Int).Value = turnoInfo.UsuarioCreacionId;

                    oConnection.Open();
                    resultado = Convert.ToInt32(sqlComando.ExecuteScalar());

                    oConnection.Close();
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(resultado);
        }
        protected void btnGuardarTurno_OnClick(object sender, EventArgs e)
        {
            var usuarioInfo = ObtenerUsuarioInfo();
            var script      = new StringBuilder(String.Empty);
            var mensaje     = String.Empty;
            var turnoId     = Convert.ToInt32(hdnTurnoId.Value);

            #region Datos Turno
            var turnoInfo = new TurnoInfo();
            turnoInfo.TurnoId    = Convert.ToInt32(hdnTurnoId.Value);
            turnoInfo.Codigo     = txtCodigo.Text.Trim();
            turnoInfo.Nombre     = txtNombre.Text.Trim();
            turnoInfo.HoraInicio = txtHoraInicio.Text.Trim();
            turnoInfo.HoraFin    = txtHoraFin.Text.Trim();
            turnoInfo.Activo     = (chkActivo.Checked) ? 1 : 0;
            #endregion

            if (turnoId.Equals(0))
            {
                turnoInfo.UsuarioCreacionId = usuarioInfo.UsuarioId;
                turnoId = new Negocio.Turno().Insertar(turnoInfo);
                if (turnoId > 0)
                {
                    script.Append("document.getElementById('hdnTurnoId').value = " + turnoId + ";");
                    mensaje = "Se registró el Turno correctamente";
                }
                else
                {
                    mensaje = "Ya existe un Turno registrado con el nombre: " + txtNombre.Text.Trim();
                }
            }
            else
            {
                turnoInfo.UsuarioModificacionId = usuarioInfo.UsuarioId;
                turnoId = new Negocio.Turno().Actualizar(turnoInfo);
                if (turnoId > 0)
                {
                    mensaje = "Se actualizó el Turno correctamente";
                }
                else
                {
                    mensaje = "Ya existe un Turno registrada con el nombre: " + txtNombre.Text.Trim();
                }
            }
            script.Append("MostrarMensaje('" + mensaje + "');");
            script.Append("LimpiarTurno();");
            script.Append("var modalDialog = $find('mpeTurno'); modalDialog.hide();");

            CargarDatos();
            RegistrarScript(script.ToString(), "GuardarTurno");
        }
        public int Actualizar(TurnoInfo turnoInfo)
        {
            int resultado = 0;

            try
            {
                resultado = _turnoAccesoDatos.Actualizar(turnoInfo);
            }
            catch (Exception ex)
            {
                bool rethrow = ExceptionPolicy.HandleException(ex, Constantes.ExcepcionPoliticaLogicaNegocio);
                if (rethrow)
                {
                    throw;
                }
            }
            return(resultado);
        }
        private static TurnoInfo CargarTurnoInfo(IDataReader dr)
        {
            int colCount = dr.FieldCount;
            var values   = new object[colCount];

            #region Indices
            int indTurnoId               = dr.GetOrdinal("TurnoId");
            int indCodigo                = dr.GetOrdinal("Codigo");
            int indNombre                = dr.GetOrdinal("Nombre");
            int indHoraInicio            = dr.GetOrdinal("HoraInicio");
            int indHoraFin               = dr.GetOrdinal("HoraFin");
            int indActivo                = dr.GetOrdinal("Activo");
            int indUsuarioCreacionId     = dr.GetOrdinal("UsuarioCreacionId");
            int indUsuarioCreacion       = dr.GetOrdinal("UsuarioCreacion");
            int indFechaCreacion         = dr.GetOrdinal("FechaCreacion");
            int indUsuarioModificacionId = dr.GetOrdinal("UsuarioModificacionId");
            int indUsuarioModificacion   = dr.GetOrdinal("UsuarioModificacion");
            int indFechaModificacion     = dr.GetOrdinal("FechaModificacion");
            int indNumeroFila            = dr.GetOrdinal("NumeroFila");
            int indTotalFilas            = dr.GetOrdinal("TotalFilas");
            #endregion

            var turnoInfo = new TurnoInfo();
            dr.GetValues(values);

            #region Campos
            turnoInfo.TurnoId               = Convert.ToInt32(values[indTurnoId]);
            turnoInfo.Codigo                = Convert.ToString(values[indCodigo]);
            turnoInfo.Nombre                = Convert.ToString(values[indNombre]);
            turnoInfo.HoraInicio            = Convert.ToString(values[indHoraInicio]);
            turnoInfo.HoraFin               = Convert.ToString(values[indHoraFin]);
            turnoInfo.Activo                = Convert.ToInt32(values[indActivo]);
            turnoInfo.UsuarioCreacionId     = Convert.ToInt32(values[indUsuarioCreacionId]);
            turnoInfo.UsuarioCreacion       = Convert.ToString(values[indUsuarioCreacion]);
            turnoInfo.FechaCreacion         = Convert.ToDateTime(values[indFechaCreacion]);
            turnoInfo.UsuarioModificacionId = Convert.ToInt32(values[indUsuarioModificacionId]);
            turnoInfo.UsuarioModificacion   = Convert.ToString(values[indUsuarioModificacion]);
            turnoInfo.FechaModificacion     = Convert.ToDateTime(values[indFechaModificacion]);
            turnoInfo.NumeroFila            = Convert.ToInt32(values[indNumeroFila]);
            turnoInfo.TotalFilas            = Convert.ToInt32(values[indTotalFilas]);
            #endregion

            return(turnoInfo);
        }