Exemplo n.º 1
0
        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));
        }
Exemplo n.º 2
0
        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
                });
            }
        }
Exemplo n.º 3
0
        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));
        }