/// <summary> /// 删除符合指定条件的通知 /// </summary> public override bool DeleteNotifiesBySearch(AdminNotifyFilter notifyFilter, Guid[] excludeRoleIds) { using (SqlQuery query = new SqlQuery()) { #region 组合SQL语句 StringBuilder builder = FilterToCondition(query, notifyFilter); string excludeRoleSql = DaoUtil.GetExcludeRoleSQL("[UserID]", excludeRoleIds, query); if (string.IsNullOrEmpty(excludeRoleSql) == false) { builder.Append(" AND " + excludeRoleSql); } #endregion query.CommandText = "DELETE FROM bx_Notify WHERE " + builder.ToString(); query.ExecuteNonQuery(); } return(true); }
/// <summary> /// 高级搜索 /// </summary> public override NotifyCollection GetNotifiesBySearch(AdminNotifyFilter notifyFilter, int pageNumber) { using (SqlQuery query = new SqlQuery()) { StringBuilder condition = FilterToCondition(query, notifyFilter); query.Pager.IsDesc = true; query.Pager.TableName = "[bx_Notify]"; query.Pager.SortField = "[NotifyID]"; query.Pager.PageNumber = pageNumber; query.Pager.PageSize = notifyFilter.PageSize; query.Pager.SelectCount = true; query.Pager.Condition = condition.ToString(); using (XSqlDataReader reader = query.ExecuteReader()) { NotifyCollection notifies = new NotifyCollection(reader); if (reader.NextResult()) { if (reader.Read()) { notifies.TotalRecords = reader.Get <int>(0); } } return(notifies); } } }
private void DeleteSearched() { using (new ErrorScope()) { MessageDisplay msgDisplay = CreateMessageDisplay(); try { AdminNotifyFilter notifyFilter = AdminNotifyFilter.GetFromFilter("filter"); if (notifyFilter != null) { bool success = NotifyBO.Instance.DeleteNotifiesBySearch(MyUserID, notifyFilter); if (!success) { CatchError <ErrorInfo>(delegate(ErrorInfo error) { msgDisplay.AddError(error); }); } else { } } } catch (Exception ex) { msgDisplay.AddError(ex.Message); } } }
/// <summary> /// 高级搜索 /// </summary> public override NotifyCollection AdminGetNotifiesBySearch(AdminNotifyFilter notifyFilter, int pageNumber, IEnumerable <Guid> excludeRoleIds) { using (SqlQuery query = new SqlQuery()) { StringBuilder condition = FilterToCondition(query, notifyFilter); string exlcludeUserIDs = DaoUtil.GetExcludeRoleSQL("UserID", excludeRoleIds, query); if (!string.IsNullOrEmpty(exlcludeUserIDs)) { condition.Append(" AND " + exlcludeUserIDs); } query.Pager.IsDesc = true; query.Pager.TableName = "[bx_Notify]"; query.Pager.SortField = "[NotifyID]"; query.Pager.PageNumber = pageNumber; query.Pager.PageSize = notifyFilter.PageSize; query.Pager.SelectCount = true; query.Pager.Condition = condition.ToString(); using (XSqlDataReader reader = query.ExecuteReader()) { NotifyCollection notifies = new NotifyCollection(reader); if (reader.NextResult()) { if (reader.Read()) { notifies.TotalRecords = reader.Get <int>(0); } } return(notifies); } } }
/// <summary> /// 搜索通知 /// </summary> public NotifyCollection GetNotifiesBySearch(AdminNotifyFilter notifyFilter, int pageNumber) { if (SafeMode) { if (!IsExecutorLogin) { ThrowError(new NotLoginError()); return(new NotifyCollection()); } } if (notifyFilter == null) { notifyFilter = new AdminNotifyFilter(); } pageNumber = pageNumber <= 0 ? 1 : pageNumber; return(NotifyDao.Instance.GetNotifiesBySearch(notifyFilter, pageNumber)); }
/// <summary> /// 删除符合指定条件的通知 /// </summary> public bool DeleteNotifiesBySearch(int operatorUserID, AdminNotifyFilter notifyFilter) { if (notifyFilter == null) { notifyFilter = new AdminNotifyFilter(); } Guid[] excludeRoleIds = ManagePermission.GetNoPermissionTargetRoleIds(operatorUserID, PermissionTargetType.Content); NotifyDao.Instance.DeleteNotifiesBySearch(notifyFilter, excludeRoleIds); //bool isDeleted = NotifyDao.Instance.DeleteNotifiesBySearch(notifyFilter); //if (isDeleted) //{ // UserBO.Instance.ClearUserDataCache(); //} return(true); }
private StringBuilder FilterToCondition(SqlQuery query, AdminNotifyFilter notifyFilter) { #region 组合SQL语句 StringBuilder condition = new StringBuilder("1=1"); if (notifyFilter.NotifyType != null) { condition.Append(" AND [TypeID] = @TypeID "); query.CreateParameter <int?>("@TypeID", notifyFilter.NotifyType, SqlDbType.Int); } if (notifyFilter.IsRead != null) { condition.Append(" AND [IsRead] = @IsRead "); query.CreateParameter <bool?>("@IsRead", notifyFilter.IsRead, SqlDbType.Bit); } if (notifyFilter.BeginDate != null) { condition.Append(" AND [UpdateDate] >= @BeginDate "); query.CreateParameter <DateTime?>("@BeginDate", notifyFilter.BeginDate, SqlDbType.DateTime); } if (notifyFilter.EndDate != null) { condition.Append(" AND [UpdateDate] <= @EndDate "); query.CreateParameter <DateTime?>("@EndDate", notifyFilter.EndDate, SqlDbType.DateTime); } if (!string.IsNullOrEmpty(notifyFilter.Owner)) { condition.Append(" AND [UserID] IN (SELECT [UserID] FROM [bx_Users] WHERE [Username] LIKE '%'+ @Owner + '%') "); query.CreateParameter <string>("@Owner", notifyFilter.Owner, SqlDbType.NVarChar, 50); } #endregion return(condition); }
private void SearchAlbums() { AdminNotifyFilter filter = AdminNotifyFilter.GetFromForm(); filter.Apply("filter", "page"); }
////<summary> ////高级搜索 ////</summary> public abstract NotifyCollection GetNotifiesBySearch(AdminNotifyFilter notifyFilter, int pageNumber);
public abstract NotifyCollection AdminGetNotifiesBySearch(AdminNotifyFilter notifyFilter, int pageNumber, IEnumerable <Guid> excludeRoleIds);
/// <summary> /// 删除符合指定条件的通知 /// </summary> public abstract bool DeleteNotifiesBySearch(AdminNotifyFilter notifyFilter, Guid[] excludeRoleIds);
public NotifyCollection AdminGetNotifiesBySearch(int operatorUserID, AdminNotifyFilter notifyFilter, int pageNumber) { IEnumerable <Guid> excludeRoleIds = ManagePermission.GetNoPermissionTargetRoleIds(operatorUserID, BackendPermissions.ActionWithTarget.Manage_Notify); return(NotifyDao.Instance.AdminGetNotifiesBySearch(notifyFilter, pageNumber, excludeRoleIds)); }