public static List <Discount> GetAll(int storeId) { DiscountQuery q = new DiscountQuery(); q.Where(q.StoreId == storeId); q.OrderBy(q.DnnRoleId.Ascending); DiscountCollection collection = new DiscountCollection(); collection.Load(q); return(collection.ToList()); }
internal static List <Discount> GetActiveDiscountsForCurrentUser(int storeId) { UserInfo userInfo = UserController.GetCurrentUserInfo(); RoleController roleController = new RoleController(); List <RoleInfo> userRoles = roleController.GetUserRoles(userInfo.PortalID, userInfo.UserID).ToList <RoleInfo>(); List <int> roleIds = userRoles.ConvertAll(r => r.RoleID); DiscountQuery q = new DiscountQuery(); q.Where(q.StoreId == storeId); q.Where(q.IsActive == true); if (roleIds.Count > 0) { q.Where(q.Or( q.DnnRoleId.IsNull(), q.DnnRoleId.In(roleIds.ToArray()) )); } else { q.Where(q.Or(q.DnnRoleId.IsNull())); } DateTime now = DateTime.Now; q.Where(q.Or( q.ValidFromDate.IsNull(), now >= q.ValidFromDate )); q.Where(q.Or( q.ValidToDate.IsNull(), now <= q.ValidToDate )); DiscountCollection discounts = new DiscountCollection(); discounts.Load(q); return(discounts.ToList()); }