public JsonResult List(BonusQuery query) { var result = _iBonusService.Get(query); var datas = result.Models.ToList().Select(m => new BonusModel() { Id = m.Id, Type = m.Type, TypeStr = m.Type.ToDescription(), Style = m.Style, PriceType = (BonusInfo.BonusPriceType)m.PriceType, Name = m.Name, MerchantsName = m.MerchantsName, Remark = m.Remark, Blessing = m.Blessing, TotalPrice = m.TotalPrice, StartTime = m.StartTime, EndTime = m.EndTime, FixedAmount = (decimal)m.FixedAmount, RandomAmountStart = (decimal)m.RandomAmountStart, RandomAmountEnd = (decimal)m.RandomAmountEnd, ImagePath = m.ImagePath, Description = m.Description, ReceiveCount = m.ReceiveCount, IsInvalid = m.IsInvalid, StateStr = GetStateString(m) }).ToList(); var model = new DataGridModel <BonusModel> { rows = datas, total = result.Total }; return(Json(model, true)); }
public QueryPageModel <BonusInfo> Get(BonusQuery query) { var db = DbFactory.Default.Get <BonusInfo>(); if (query.Type.HasValue) { db.Where(p => p.Type == query.Type); } if (!string.IsNullOrEmpty(query.Name)) { db.Where(p => p.Name.Contains(query.Name)); } if (query.State == 1) { db = db.Where(p => p.EndTime > DateTime.Now && p.IsInvalid == false); } else if (query.State == 2) { db = db.Where(p => p.IsInvalid == true || p.EndTime < DateTime.Now); } switch (query.Sort.ToLower()) { case "totalprice": if (query.IsAsc) { db.OrderBy(p => p.TotalPrice); } else { db.OrderByDescending(p => p.TotalPrice); } break; case "receivecount": if (query.IsAsc) { db.OrderBy(p => p.ReceiveCount); } else { db.OrderByDescending(p => p.ReceiveCount); } break; case "starttime": if (query.IsAsc) { db.OrderBy(p => p.StartTime); } else { db.OrderByDescending(p => p.StartTime); } break; case "endtime": if (query.IsAsc) { db.OrderBy(p => p.EndTime); } else { db.OrderByDescending(p => p.EndTime); } break; default: db.OrderByDescending(o => o.StartTime); break; } var datas = db.ToPagedList(query.PageNo, query.PageSize); return(new QueryPageModel <BonusInfo>() { Models = datas, Total = datas.TotalRecordCount }); }
/// <summary> /// 获取红包列表 /// </summary> public static QueryPageModel <BonusInfo> Get(BonusQuery query) { return(Service.Get(query)); }