コード例 #1
0
        public IActionResult Get(RootRequestModel requestModel)
        {
            #region predicate
            Expression <Func <EmailMessage, bool> > where = x => true;

            if (!string.IsNullOrWhiteSpace(requestModel.Name))
            {
                where = ExpressionHelpers.CombineAnd(where, a => a.To.Contains(requestModel.Name));
            }


            #endregion

            var allEmailMessage = _emailService.GetPagedList(
                where,
                null,
                false,
                requestModel.Page - 1,
                requestModel.Count);
            if (allEmailMessage == null)
            {
                return(RespondFailure());
            }
            var model = allEmailMessage;

            return(RespondSuccess(model, model.TotalCount));
        }
コード例 #2
0
 /// <summary>
 /// 发送一个HTTP的Get请求,并返回全部response流
 /// </summary>
 /// <param name="url">地址</param>
 /// <param name="timeout">超时时间,可以为Null</param>
 /// <param name="cookies">CookieCollection</param>
 /// <returns>字符串</returns>
 public string sendGETRequestWithCallback(string url, int?timeout, CookieCollection cookies)
 {
     try
     {
         if (string.IsNullOrEmpty(url))
         {
             throw new ArgumentNullException("没有url");
         }
         HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
         request.Method    = "GET";
         request.UserAgent = DefaultUserAgent;
         if (timeout.HasValue)
         {
             request.Timeout = timeout.Value;
         }
         if (cookies != null)
         {
             request.CookieContainer = new CookieContainer();
             request.CookieContainer.Add(cookies);
         }
         Stream       responseStream = request.GetResponse().GetResponseStream();
         StreamReader responseReader = new StreamReader(responseStream, Encoding.UTF8);
         return(responseReader.ReadToEnd());
     }
     catch (Exception ex)
     {
         RootRequestModel errorMsg = new RootRequestModel();
         errorMsg.code    = 400;
         errorMsg.message = ex.Message;
         return(Newtonsoft.Json.JsonConvert.SerializeObject(errorMsg));
     }
 }
コード例 #3
0
        public IActionResult Get(RootRequestModel requestModel)
        {
            #region predicate
            Expression <Func <EmailAccount, bool> > where = x => true;

            if (!string.IsNullOrWhiteSpace(requestModel.Name))
            {
                where = ExpressionHelpers.CombineAnd(where, a => a.Username.Contains(requestModel.Name));
            }


            #endregion

            var emailAccounts = _emailAccountService.GetPagedList(
                where,
                null,
                false,
                requestModel.Page - 1,
                requestModel.Count);
            if (emailAccounts == null)
            {
                return(RespondFailure());
            }

            var model = emailAccounts;//.Select(x => x.ToModel());

            return(RespondSuccess(model, emailAccounts.TotalCount));
        }
コード例 #4
0
        public IActionResult Get(RootRequestModel requestModel)
        {
            #region predicate
            Expression <Func <LocalizedProperty, bool> > where = x => true;

            if (!string.IsNullOrWhiteSpace(requestModel.Name))
            {
                where = ExpressionHelpers.CombineAnd <LocalizedProperty>(where, a => a.LocaleKey.Contains(requestModel.Name));
            }

            if (!string.IsNullOrWhiteSpace(requestModel.Content))
            {
                where = ExpressionHelpers.CombineAnd <LocalizedProperty>(where, a => a.LocaleValue.Contains(requestModel.Content));
            }

            #endregion

            var allLocalizedProperty = _localizedPropertyService.GetPagedList(
                where,
                x => x.Id,
                false,
                requestModel.Page - 1,
                requestModel.Count);
            if (allLocalizedProperty == null)
            {
                return(RespondFailure());
            }
            var model = allLocalizedProperty;

            return(RespondSuccess(model, model.TotalCount));
        }
コード例 #5
0
        public IActionResult GetByIdLocale(RootRequestModel requestModel)
        {
            var menu  = _menuService.FirstOrDefault(x => x.Id == requestModel.Id);
            var model = menu.ToModel();

            model.LanguageId = requestModel.LanguageId;
            GetLocales(menu, model);

            return(RespondSuccess(model));
        }
コード例 #6
0
        public IActionResult Get([FromQuery] RootRequestModel requestModel)
        {
            #region predicate
            Expression <Func <NewsLetterSubscription, bool> > where = x => true;
            DateTime dateFrom, dateTo;

            if (!string.IsNullOrWhiteSpace(requestModel.Name))
            {
                where = a => a.Name.Contains(requestModel.Name);
            }

            if (!string.IsNullOrWhiteSpace(requestModel.Email))
            {
                where = ExpressionHelpers.CombineAnd <NewsLetterSubscription>(where, a => a.Email.Contains(requestModel.Email));
            }

            if (!string.IsNullOrWhiteSpace(requestModel.Mobile))
            {
                where = ExpressionHelpers.CombineAnd <NewsLetterSubscription>(where, a => a.Mobile.Contains(requestModel.Mobile));
            }

            if ((requestModel.DateFrom.IsNotNullOrEmpty()))
            {
                dateFrom = requestModel.DateFrom.ToDateTime();
                where    = ExpressionHelpers.CombineAnd <NewsLetterSubscription>(where, a => a.CreatedOnUtc >= dateFrom);
            }
            if ((requestModel.DateTo.IsNotNullOrEmpty()))
            {
                dateTo = requestModel.DateTo.ToDateTimeAddOneDay();
                where  = ExpressionHelpers.CombineAnd <NewsLetterSubscription>(where, a => a.CreatedOnUtc <= dateTo);
            }
            #endregion

            var newsLetterSubscriptions = _newsLetterSubscriptionService.GetPagedList(
                where,
                null,
                false,
                requestModel.Page - 1,
                requestModel.Count);
            return(RespondSuccess(newsLetterSubscriptions, newsLetterSubscriptions.TotalCount));
        }
コード例 #7
0
        public async Task <IActionResult> Get([FromQuery] RootRequestModel requestModel)
        {
            #region predicate

            Expression <Func <NewsItem, bool> > where = x => true;
            DateTime dateFrom, dateTo;

            if (!string.IsNullOrWhiteSpace(requestModel.Name))
            {
                where = a => a.Name.Contains(requestModel.Name);
            }
            if ((requestModel.DateFrom.IsNotNullOrEmpty()))
            {
                dateFrom = requestModel.DateFrom.ToDateTime();
                where    = ExpressionHelpers.CombineAnd <NewsItem>(where, a => a.CreatedOnUtc >= dateFrom);
            }
            if ((requestModel.DateTo.IsNotNullOrEmpty()))
            {
                dateTo = requestModel.DateTo.ToDateTime().AddDays(1);
                where  = ExpressionHelpers.CombineAnd <NewsItem>(where, a => a.CreatedOnUtc <= dateTo);
            }


            if (requestModel.CategoryId.HasValue)
            {
                where = ExpressionHelpers.CombineAnd <NewsItem>(where,
                                                                a => a.NewsItemCategories.Any(x => x.NewsCategoryId == requestModel.CategoryId.Value));
            }
            #endregion


            var newsItems = await _newsItemService.GetPagedListAsync(
                where,
                x => x.StartDateUtc,
                false,
                requestModel.Page - 1,
                requestModel.Count);

            return(RespondSuccess(newsItems.Select(x => x.ToModel()), newsItems.TotalCount));
        }
コード例 #8
0
        public async Task <IActionResult> Get([FromQuery] RootRequestModel requestModel)
        {
            if (requestModel == null)
            {
                return(BadRequest());
            }

            if (requestModel.Page < 1)
            {
                requestModel.Page = 1;
            }
            if (requestModel.Count < 1)
            {
                requestModel.Count = 10;
            }

            Expression <Func <Order, bool> > where = x => true;

            if (!string.IsNullOrWhiteSpace(requestModel.Name))
            {
                where = ExpressionHelpers.CombineAnd(where, a => a.BuyerId.Contains(requestModel.Name));
            }

            var orders = await _orderService.GetPagedListAsync(
                where,
                x => x.OrderDate,
                true,
                requestModel.Page - 1,
                requestModel.Count);

            if (orders == null)
            {
                return(RespondFailure());
            }
            var model = orders;//.Select(x => x.ToModel());

            return(RespondSuccess(model, orders.TotalCount));
        }
コード例 #9
0
        public IActionResult Get([FromQuery] RootRequestModel requestModel)
        {
            Expression <Func <Language, bool> > where = x => true;

            if (!string.IsNullOrWhiteSpace(requestModel.Name))
            {
                where = ExpressionHelpers.CombineAnd <Language>(where, a => a.Name.Contains(requestModel.Name));
            }

            var languages = _languageService.GetPagedList(
                where,
                null,
                false,
                requestModel.Page - 1,
                requestModel.Count);

            if (languages == null)
            {
                return(RespondFailure());
            }
            var model = languages;

            return(RespondSuccess(model, model.TotalCount));
        }
コード例 #10
0
        public async Task <IActionResult> Get([FromQuery] RootRequestModel requestModel)
        {
            #region predicate
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            if (requestModel == null)
            {
                return(BadRequest());
            }

            if (requestModel.Page < 1)
            {
                requestModel.Page = 1;
            }
            if (requestModel.Count < 1)
            {
                requestModel.Count = 10;
            }
            Expression <Func <Category, bool> > where = x => true;

            if (!string.IsNullOrWhiteSpace(requestModel.Name))
            {
                where = a => a.Name.Contains(requestModel.Name);
            }

            bool ascending = true;

            if (requestModel.Ascending.HasValue)
            {
                ascending = requestModel.Ascending.Value;
            }
            #endregion

            IPagedList <Category> categories;

            switch (requestModel.OrderBy)
            {
            case "Name":
                categories = await _categoryService.GetPagedListAsync(
                    where,
                    x => x.Name,
                    ascending,
                    requestModel.Page - 1,
                    requestModel.Count);

                break;

            default:
                categories = await _categoryService.GetPagedListAsync(
                    where,
                    x => x.DisplayOrder,
                    ascending,
                    requestModel.Page - 1,
                    requestModel.Count);

                break;
            }


            var model = categories.Select(x => x.ToModel()).ToList();


            return(RespondSuccess(model, categories.TotalCount));
        }