public CheckInPageModel(CheckInListModel itemListModel, CheckInFilter filter, MapItem mapItem)
 {
     this.MapItemId   = mapItem.Id;
     this.TerritoryId = mapItem.TerritoryId;
     this.ListModel   = itemListModel;
     this.Pager       = FilterUtils.GetPager(itemListModel.PageCount, itemListModel.PageIndex);
     this.Filter      = filter;
 }
 public static int GetTotalCount(HuntingEntities dataContext, CheckInFilter filter)
 {
     try
     {
         var generator  = new CheckInListGenerator(filter);
         var totalCount = QueryGenerator.GetTotalCount(dataContext, generator);
         return(totalCount);
     }
     catch (Exception exception)
     {
         logger.Error(exception, "GetTotalCount");
         return(0);
     }
 }
Beispiel #3
0
        // GET: CheckIn/id
        public ActionResult Index(int id, CheckInFilter filter, int?page)
        {
            try
            {
                using (var dataContext = new HuntingEntities())
                {
                    int languageId = (int)Session[LocalizationAttribute.SESSION_LANGUAGE_ID];
                    var language   = LanguageContext.GetLanguage(languageId);
                    var user       = AclUserContext.GetDetail(dataContext, User.Identity.Name);
                    if (user == null)
                    {
                        ContextUtils.CreateActionStateCookie(Response, ActionTypeEnum.Warning, GlobalRes.ERROR_NOT_ALLOWED);
                        return(RedirectToAction("Index", "Home"));
                    }
                    var mapItem = MapItemContext.GetDetail(dataContext, id);
                    if (mapItem == null)
                    {
                        ContextUtils.CreateActionStateCookie(Response, ActionTypeEnum.Warning, GlobalRes.ERROR_NOT_FOUND);
                        return(RedirectToAction("Index", "Home"));
                    }
                    if (user.CanViewTerritory(mapItem.Territory) == false)
                    {
                        ContextUtils.CreateActionStateCookie(Response, ActionTypeEnum.Warning, GlobalRes.ERROR_NOT_ALLOWED);
                        return(RedirectToAction("Index", "Home"));
                    }

                    filter.PrepareFilter();
                    filter.MapItemId = mapItem.Id;
                    int pageIndex     = page ?? 0;
                    var itemList      = CheckInContext.GetList(dataContext, filter, pageIndex);
                    var itemListModel = new CheckInListModel(itemList, pageIndex, language);
                    var model         = new CheckInPageModel(itemListModel, filter, mapItem);
                    model.CanUpdate = user.CanUpdateTerritory(mapItem.Territory);
                    return(View(model));
                }
            }
            catch (Exception exception)
            {
                logger.Error(exception, "CheckInController");
                ContextUtils.CreateActionStateCookie(Response, ActionTypeEnum.Danger, GlobalRes.ERROR_EXCEPTION);
                return(RedirectToAction("Index", "Home"));
            }
        }
 public static ItemListHolder <CheckInListItem> GetList(HuntingEntities dataContext, CheckInFilter filter, int pageIndex)
 {
     try
     {
         var generator  = new CheckInListGenerator(filter);
         var list       = QueryGenerator.ReadPagedList <CheckInListItem>(dataContext, generator, pageIndex, Constants.DEFAULT_LIST_PAGE_SIZE);
         var itemHolder = new ItemListHolder <CheckInListItem>(list);
         itemHolder.TotalCount = GetTotalCount(dataContext, filter);
         return(itemHolder);
     }
     catch (Exception exception)
     {
         logger.Error(exception, "GetList");
         return(new ItemListHolder <CheckInListItem>());
     }
 }