Ejemplo n.º 1
0
        public ActionResult GetListJson(FormGroupGridArgumentModel model)
        {
            var dal  = GetDAL <StepCinemaDataLayer.DataAccess.FormGroupLayer>();
            var data = dal.GetList(model);

            return(CamelJson(data));
        }
Ejemplo n.º 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public FormGroupGridModel GetList(FormGroupGridArgumentModel model)
        {
            string formGroupId   = model.Filter.FormGroupId ?? "";
            string formGroupName = model.Filter.FormGroupName ?? "";
            string sort          = "Order ASC";

            if ((!string.IsNullOrWhiteSpace(model.Sort.Field)) && (!string.IsNullOrWhiteSpace(model.Sort.Direction)))
            {
                sort = model.Sort.Field + ' ' + model.Sort.Direction;
            }
            else
            {
                model.Sort.Field     = "";
                model.Sort.Direction = "";
            }
            var query = this.Entities.FormGroups.OrderBy(sort);

            if (!string.IsNullOrEmpty(formGroupName))
            {
                query = query.Where(x => (x.FormGroupName ?? "").Contains(formGroupName));
            }
            //if (!string.IsNullOrWhiteSpace(model.Filter.Active))
            //{
            //    var active = (model.Filter.Active == "Y");
            //    query = query.Where(x => x.Active == active);
            //}
            var count = query.Count();

            model.Pagination.Count    = count;
            model.Pagination.MaxPages = (((count - 1) / model.Pagination.PageSize) + 1);
            if (model.Pagination.CurrentPage > model.Pagination.MaxPages)
            {
                model.Pagination.CurrentPage = model.Pagination.MaxPages;
            }

            var result = query
                         .Select(x => new FormGroupGridValueModel()
            {
                FormGroupId   = x.FormGroupId,
                FormGroupName = x.FormGroupName,
                //Active = ((x.Active) ? "Active" : "Inactive")
            }).Skip((model.Pagination.CurrentPage - 1) * model.Pagination.PageSize).Take(model.Pagination.PageSize).ToList();

            //model.Filter.Active = model.Filter.Active ?? "";
            var data = new FormGroupGridModel();

            data.Arguments = model;
            data.Columns   = FormGroupGridColumnModel.GetColumns();
            data.Values    = result;
            return(data);
        }