コード例 #1
0
        public async Task <IActionResult> ListData(SubscriberSearchModel model)
        {
            var data = await _emailSubcriberService.SearchEmailSubcriber(model);

            ViewBag.lstCountSub = data.ResponseData.Data.Count();
            return(PartialView("_EmailSubcriberListTable", data.GetDataResponse()));
        }
コード例 #2
0
        public IActionResult Export(string DateFrom, string DateTo)
        {
            SubscriberSearchModel model = new SubscriberSearchModel();
            string fileName             = string.Empty;

            if (string.IsNullOrEmpty(DateFrom) && string.IsNullOrEmpty(DateTo))
            {
                return(Content(""));
            }
            model.CreatedDateFrom = DateTime.Parse(DateFrom);
            model.CreatedDateTo   = DateTime.Parse(DateTo);
            var res = _emailSubcriberService.GetLstSubcriToExport(model).Result;

            if (res != null && res.Count() > 0)
            {
                fileName = ExportEmailSubToExcel(res);
            }

            if (!string.IsNullOrEmpty(fileName))
            {
                return(Json(new { fileName = fileName }));
            }
            else
            {
                return(Json(new { fileName = fileName, errorMessage = "No data to export" }));
            }
        }
コード例 #3
0
        public IPagedList <SubscriberViewModel> SearchSubscriber(SubscriberSearchModel searchModel)
        {
            var query = (from p in _dbCMSContext.Subscribers.AsNoTracking()
                         where (p.Email.Contains(searchModel.Email) || string.IsNullOrEmpty(searchModel.Email)) ||
                         (p.IsActivated == searchModel.IsActivated || searchModel.IsActivated == null) ||
                         (p.CreatedDate >= searchModel.CreatedDateFrom || searchModel.CreatedDateFrom == null) ||
                         (p.CreatedDate <= searchModel.CreatedDateTo || searchModel.CreatedDateTo == null)
                         select _mapper.Map <Subscribers, SubscriberViewModel>(p)).ToList();

            throw new NotImplementedException();
        }
コード例 #4
0
        public async Task <List <SubscriberViewModel> > GetLstSubcriToExport(SubscriberSearchModel searchModel)
        {
            var req = new BaseRequest <SubscriberSearchModel>(searchModel);
            var res = await _aPIExcute.PostData <List <SubscriberViewModel>, SubscriberSearchModel>($"{_baseAdminAPIUrl}{_adminPortalApiUrl.PostAPI.GetListSubToExport}", APIHelpers.HttpMethodEnum.POST, req, Token);

            if (!res.IsSuccessStatusCode)
            {
                return(null);
            }
            return(res.ResponseData);
        }
コード例 #5
0
        public List <SubscriberViewModel> GetListSubToExport(SubscriberSearchModel searchModel)
        {
            var query = _dbCMSContext.Subscribers.AsNoTracking();

            if (searchModel.CreatedDateFrom.HasValue)
            {
                query = query.Where(x => x.CreatedDate >= searchModel.CreatedDateFrom);
            }
            if (searchModel.CreatedDateTo.HasValue)
            {
                query = query.Where(x => x.CreatedDate <= searchModel.CreatedDateTo);
            }
            query = query.OrderByDescending(x => x.CreatedDate);
            return(_mapper.ProjectTo <SubscriberViewModel>(query).ToList());
        }
コード例 #6
0
 public IActionResult GetLstToExport([FromBody] SubscriberSearchModel model)
 {
     try
     {
         var res = _subscriberService.GetListSubToExport(model);
         if (res != null)
         {
             return(OkBaseResponse(res));
         }
         return(ErrorBaseResponse(System.Net.HttpStatusCode.NotFound));
     }
     catch (Exception ex)
     {
         return(ErrorBaseResponse(ex));
     }
 }
コード例 #7
0
 public IActionResult SearchPost([FromQuery] SubscriberSearchModel model)
 {
     try
     {
         var res = _subscriberService.SearchSubscriber(model);
         if (res != null)
         {
             return(OkBaseResponse(res));
         }
         return(ErrorBaseResponse(System.Net.HttpStatusCode.NotFound));
     }
     catch (Exception ex)
     {
         return(ErrorBaseResponse(ex));
     }
 }
コード例 #8
0
 public IActionResult SearchPost([FromQuery] SubscriberSearchModel model)
 {
     try
     {
         var res = _subscriberService.SearchSubscriber(model);
         if (res != null)
         {
             return(Ok(res));
         }
         return(NoContent());
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.StackTrace.ToString()));
     }
 }
コード例 #9
0
        public IPagedList <SubscriberViewModel> SearchSubscriber(SubscriberSearchModel searchModel)
        {
            var query = _dbCMSContext.Subscribers.AsNoTracking();

            if (!string.IsNullOrEmpty(searchModel.Email))
            {
                query = query.Where(x => x.Email.Contains(searchModel.Email));
            }
            if (searchModel.IsActivated.HasValue)
            {
                query = query.Where(x => x.IsActivated == searchModel.IsActivated);
            }
            if (searchModel.CreatedDateFrom.HasValue)
            {
                query = query.Where(x => x.CreatedDate >= searchModel.CreatedDateFrom);
            }
            if (searchModel.CreatedDateTo.HasValue)
            {
                query = query.Where(x => x.CreatedDate <= searchModel.CreatedDateTo);
            }
            query = query.OrderByDescending(x => x.CreatedDate);

            return(new PagedList <SubscriberViewModel>(_mapper.ProjectTo <SubscriberViewModel>(query), searchModel.PageIndex, searchModel.PageSize));
        }
コード例 #10
0
        public IActionResult List()
        {
            var model = new SubscriberSearchModel();

            return(View(model));
        }
コード例 #11
0
        public async Task <BaseResponse <PagedListClient <SubscriberViewModel> > > SearchEmailSubcriber(SubscriberSearchModel searchModel)
        {
            try
            {
                var    requestParams = ConvertToUrlParameter(searchModel);
                string urlRequest    = $"{_baseAdminAPIUrl}{_adminPortalApiUrl.PostAPI.SearchEmailSubcriber}{requestParams}";
                var    res           = await _aPIExcute.GetData <PagedListClient <SubscriberViewModel> >(urlRequest, null, Token);

                return(res);
            }
            catch (Exception ex)
            {
                return(BaseResponse <PagedListClient <SubscriberViewModel> > .InternalServerError(message : ex.Message, fullMsg : ex.StackTrace));
            }
        }