public IHttpActionResult GetList([FromUri] ApplyQueryCriteriaRequest request, [UserProfile] UserProfile userProfile) { IHttpActionResult httpActionResult; var result = CheckDataRoleAndArrangeParams(request, userProfile, out httpActionResult); if (!result) { return(httpActionResult); } var exectueResult = _shopApplicationService.GetPagedList(request); return(RetrunHttpActionResult4ExectueResult(exectueResult)); }
public PagerInfo <ShopApplicationDto> GetPagedList(ApplyQueryCriteriaRequest request, PagerRequest pagerRequest) { var invitecodefilter = Filter(request); using (var db = GetYintaiHZhouContext()) { var inviteCodeRequest = db.IMS_InviteCodeRequest; var stores = db.Stores; var departments = db.Departments; var q = from icr in inviteCodeRequest.AsExpandable().Where(invitecodefilter) join store in stores on icr.StoreId equals store.Id join department in departments on icr.DepartmentId equals department.Id select new ShopApplicationDto { ApproveStatus = icr.Status, DepartmentName = department.Name, DepartmentId = icr.DepartmentId, Id = icr.Id, IdCardNo = icr.IdCard, //IsNotified = true,//<--------- MobileNo = icr.ContactMobile, NotificationTimes = icr.ApprovedNotificationTimes ?? 0 + icr.DemotionNotificationTimes ?? 0, OperatorCode = icr.OperatorCode, OperatorName = icr.Name, SectionCode = icr.SectionCode, SectionName = icr.SectionName, StoreId = icr.StoreId, StoreName = store.Name, }; var totalCount = q.Count(); var datas = q.OrderByDescending(v => v.Id).Skip(pagerRequest.SkipCount).Take(pagerRequest.PageSize).ToList(); return(new PagerInfo <ShopApplicationDto>(pagerRequest, totalCount) { Datas = datas }); } }
private static Expression <Func <IMS_InviteCodeRequest, bool> > Filter(ApplyQueryCriteriaRequest filter) { var query = PredicateBuilder.True <IMS_InviteCodeRequest>(); if (filter != null) { if (filter.StoreId != null) { query = PredicateBuilder.And(query, v => v.StoreId == filter.StoreId.Value); } if (filter.StoreId == null && filter.DataRoleStores != null) { query = PredicateBuilder.And(query, v => filter.DataRoleStores.Contains(v.StoreId)); } if (filter.ApprovedStatus != null) { ////未审核状态 白名单方式 //if (filter.ApprovedStatus.Value == 1) //{ // query = PredicateBuilder.And(query, v => v.Status == NotApproved); //} //else if (filter.ApprovedStatus.Value == 0) //{ // query = PredicateBuilder.And(query, v => ApprovedStatus.Contains(v.Status)); //} query = PredicateBuilder.And(query, v => v.Status == filter.ApprovedStatus.Value); } if (!String.IsNullOrWhiteSpace(filter.MobileNo)) { query = PredicateBuilder.And(query, v => v.ContactMobile == filter.MobileNo); return(query); } if (!String.IsNullOrWhiteSpace(filter.OperatorCode)) { query = PredicateBuilder.And(query, v => v.OperatorCode == filter.OperatorCode); return(query); } if (!String.IsNullOrWhiteSpace(filter.OperatorName)) { query = PredicateBuilder.And(query, v => v.Name == filter.OperatorName); } if (filter.DepartmentId != null) { query = PredicateBuilder.And(query, v => v.DepartmentId == filter.DepartmentId.Value); } if (filter.StartDate != null) { query = PredicateBuilder.And(query, v => v.CreateDate >= filter.StartDate); } if (filter.EndDate != null) { query = PredicateBuilder.And(query, v => v.CreateDate < filter.EndDate); } } return(query); }
public ExectueResult <PagerInfo <ShopApplicationDto> > GetPagedList(ApplyQueryCriteriaRequest request) { var pageInfo = _inviteCodeRequestRepository.GetPagedList(request, request.PagerRequest); return(new OkExectueResult <PagerInfo <ShopApplicationDto> >(pageInfo)); }