示例#1
0
        public override IQueryOver <WarehouseStock> CreateQuery(ISession session, GetDataSettings settings, Expression <Func <WarehouseStock, bool> > additionalCriteria = null)
        {
            var warehouseId = this.GetParameter("Id", "WarehouseId", settings);

            WarehouseId = warehouseId;
            return(base.CreateQuery(session, settings, x => x.Warehouse.Id == warehouseId));
        }
        public virtual IQueryOver <CourseAttendee> CreateQuery(ISession session, GetDataSettings settings)
        {
            var query = session.QueryOver <CourseAttendee>()
                        .Where(q => q.Course.Id == settings.ViewData /* && question.QuestionString != "Categories"*/);

            return(query);
        }
        public override IEnumerable GetData(GetDataSettings settings)
        {
            DownloadData(settings); // call again to download the data when user clicks search or next etc.

            // If we had downloaded the entire dataset, we would return only the required items as follows
            return(RecordsList.Skip((settings.CurrentPage - 1) * settings.LinesPerPage).Take(settings.LinesPerPage));
        }
示例#4
0
        public override IEnumerable GetData(GetDataSettings settings)
        {
            using (var session = DataService.OpenSession())
            {
                var items = session.QueryOver <BackgroundInformation>()
                            .Where(Restrictions.Not(Restrictions.On <BackgroundInformation>(x => x.Information).IsLike("Error:", MatchMode.Start)))
                            .OrderBy(i => i.DateTimeUTC).Desc
                            .Skip((settings.CurrentPage - 1) * settings.LinesPerPage)
                            .Take(settings.LinesPerPage)
                            .List();
                var result = items.Select(s => new
                {
                    Date   = s.DateTimeUTC.ToShortDateString() + " " + s.DateTimeUTC.ToLongTimeString(),
                    Task   = s.Task,
                    Status = s.Information,
                    Id     = s.Id
                }).ToList();
                return(result);
            }

            //var info = BackgroundService.StatusInfo.OrderByDescending(s => s.DateTimeUTC).Skip((settings.CurrentPage - 1) * settings.LinesPerPage)
            //               .Take(settings.LinesPerPage)
            //               .ToList();
            //var result = info.Select(s => new
            //{
            //    Date = s.DateTimeUTC.ToShortDateString() + " " + s.DateTimeUTC.ToLongTimeString(),
            //    Task = s.Task,
            //    Status = s.Information,
            //    Id = s.Id
            //}).ToList();
            //return result;
        }
示例#5
0
文件: CoreView.cs 项目: quintonn/QBic
        public virtual IQueryOver <T> CreateQuery(ISession session, GetDataSettings settings, Expression <Func <T, bool> > additionalCriteria = null)
        {
            var query = session.QueryOver <T>();

            var aliases = GetAliases();

            foreach (var alias in aliases)
            {
                query = query.Left.JoinAlias(alias.Key, alias.Value);
            }

            var or = Restrictions.Disjunction();

            if (!String.IsNullOrWhiteSpace(settings.Filter))
            {
                var filterItems = GetFilterItems();

                foreach (var item in filterItems)
                {
                    var x = Restrictions.InsensitiveLike(Projections.Property(item), settings.Filter, MatchMode.Anywhere);
                    or.Add(x);
                }

                var tempDict = new Dictionary <string, object>()
                {
                    { "X", settings.Filter }
                };

                var nonStringFilterItems = GetNonStringFilterItems();

                var method = Type.GetType("WebsiteTemplate.Menus.InputItems.InputProcessingMethods").GetMethod("GetValue");

                foreach (var item in nonStringFilterItems)
                {
                    var defaultValue = Activator.CreateInstance(item.Key);

                    MethodInfo generic = method.MakeGenericMethod(item.Key);

                    var theValue = generic.Invoke(null, new List <object>()
                    {
                        tempDict, "X", defaultValue
                    }.ToArray());
                    if ((item.Key.IsEnum && theValue.ToString().ToLower() == settings.Filter.ToLower()) || !theValue.Equals(defaultValue))
                    {
                        var x = Restrictions.Eq(Projections.Property(item.Value), theValue);
                        or.Add(x);
                    }
                }
                query.Where(or);
            }

            if (additionalCriteria != null)
            {
                query.And(additionalCriteria);
            }

            OrderQuery(query);

            return(query);
        }
示例#6
0
 public override int GetDataCount(GetDataSettings settings)
 {
     using (var session = DataService.OpenSession())
     {
         var result = GetAllTablesAsync().Result.Count;
         return(result);
     }
 }
示例#7
0
        //public virtual IQueryOver<T> OrderQuery(IQueryOver<T, T> query)
        //{
        //    return query;
        //}

        public override int GetDataCount(GetDataSettings settings)
        {
            using (var session = Store.OpenSession())
            {
                var count = session.QueryOver <T>().RowCount();
                return(count);
            }
        }
示例#8
0
 public override int GetDataCount(GetDataSettings settings)
 {
     using (var session = DataService.OpenSession())
     {
         var result = CreateQuery(session, settings).RowCount();
         return(result);
     }
 }
示例#9
0
        public override int GetDataCount(GetDataSettings settings)
        {
            var jsonString = settings.ViewData;

            ColumnsToMap = JsonHelper.DeserializeObject <List <ColumnSetting> >(jsonString);

            return(ColumnsToMap.Count);
        }
示例#10
0
        public IQueryOver <VehicleModel> CreateQuery(ISession session, GetDataSettings settings)
        {
            ManufacturerId = GetParameter("Id", settings);
            var query = session.QueryOver <VehicleModel>()
                        .Where(x => x.ManufacturerId == ManufacturerId)
                        .OrderBy(x => x.Name).Asc;

            return(query);
        }
示例#11
0
        public override Dictionary <string, string> GetViewParameters(GetDataSettings settings)
        {
            var warehouseId = this.GetParameter("Id", "WarehouseId", settings);

            return(new Dictionary <string, string>()
            {
                { "warehouseId", warehouseId }
            });
        }
示例#12
0
 public override int GetDataCount(GetDataSettings settings)
 {
     //return BackgroundService.Errors.Count;
     using (var session = DataService.OpenSession())
     {
         var count = session.QueryOver <BackgroundInformation>().Where(Restrictions.On <BackgroundInformation>(x => x.Information).IsLike("Error:", MatchMode.Start)).RowCount();
         return(count);
     }
 }
示例#13
0
        public override IQueryOver <Warehouse> CreateQuery(ISession session, GetDataSettings settings, Expression <Func <Warehouse, bool> > additionalCriteria = null)
        {
            var currentUser = Methods.GetLoggedInUserAsync(UserContext).Result as User;
            var profile     = session.QueryOver <UserProfile>().Where(x => x.User.Id == currentUser.Id).SingleOrDefault();

            var companyId = profile?.Company?.Id;

            return(base.CreateQuery(session, settings, x => x.Company.Id == companyId));
        }
示例#14
0
文件: TestView.cs 项目: quintonn/QBic
 public override IEnumerable GetData(GetDataSettings settings)
 {
     return(new List <object>()
     {
         new
         {
             Name = "Test",
         }
     });
 }
示例#15
0
 public override IEnumerable GetData(GetDataSettings settings)
 {
     using (var session = DataService.OpenSession())
     {
         var data = CreateQuery(session, settings)
                    .List <CourseAttendee>();
         //var results = data.Select(d => TransformFilterItem(session, d)).ToList();
         //return results;
         return(data.Select(GetAttendeeDetail).Where(x => x != null).ToList());
     }
 }
示例#16
0
 public override IEnumerable GetData(GetDataSettings settings)
 {
     using (var session = DataService.OpenSession())
     {
         var editionslist = CreateQuery(session, settings).Skip((settings.CurrentPage - 1) * settings.LinesPerPage)
                            .Take(settings.LinesPerPage)
                            .List <Edition>()
                            .ToList();
         return(editionslist);
     }
 }
示例#17
0
        public IQueryOver <Edition> CreateQuery(ISession session, GetDataSettings settings)
        {
            ManufacturerId = GetParameter("ManufacturerId", settings);
            ModelId        = GetParameter("Id", settings);

            var query = session.QueryOver <Edition>()
                        .Where(x => x.ManufacturerId == ManufacturerId && x.ModelId == ModelId)
                        .OrderBy(x => x.EditionName).Asc;

            return(query);
        }
示例#18
0
文件: CoreView.cs 项目: quintonn/QBic
 public override IEnumerable GetData(GetDataSettings settings)
 {
     using (var session = DataService.OpenSession())
     {
         var data = CreateQuery(session, settings).Skip((settings.CurrentPage - 1) * settings.LinesPerPage)
                    .Take(settings.LinesPerPage)
                    .List <T>()
                    .ToList();
         var results = TransformData(data);
         return(results);
     }
 }
示例#19
0
        public IQueryOver <SampleModel> CreateQuery(ISession session, GetDataSettings settings)
        {
            var query = session.QueryOver <SampleModel>();

            if (!String.IsNullOrWhiteSpace(settings.Filter))
            {
                query = query.Where(Restrictions.On <SampleModel>(x => x.LongTestValue).IsLike(settings.Filter, MatchMode.Anywhere) ||
                                    Restrictions.On <SampleModel>(x => x.StringValue).IsLike(settings.Filter, MatchMode.Anywhere));
            }

            return(query);
        }
示例#20
0
        public IQueryOver <Course> CreateQuery(ISession session, GetDataSettings settings)
        {
            var query = session.QueryOver <Course>();

            if (!String.IsNullOrWhiteSpace(settings.Filter))
            {
                query = query.Where(Restrictions.On <Course>(x => x.Venue).IsLike(settings.Filter, MatchMode.Anywhere));
            }

            query = query.OrderBy(x => x.StartDate).Desc;

            return(query);
        }
示例#21
0
        private void DownloadData(GetDataSettings settings)
        {
            var timeSinceLastCall = DateTime.Now.Subtract(LastCalled).TotalSeconds;

            if (timeSinceLastCall < 3)
            {
                return; // this is to prevent calling the web service too often and also because the first time the view is loaded it will be called twice. Not ideal, might get fixed.
            }
            LastCalled = DateTime.Now;

            var url = $"https://jsonplaceholder.typicode.com/comments";

            RecordsList.Clear();

            //GET Method
            Client.DefaultRequestHeaders.Accept.Clear();
            var asyncResponse = Client.GetAsync(url);

            asyncResponse.Wait();
            if (asyncResponse.Status != System.Threading.Tasks.TaskStatus.RanToCompletion)
            {
                throw asyncResponse.Exception;
            }
            ;

            var response    = asyncResponse.Result;
            var asyncResult = response.Content.ReadAsStringAsync();

            asyncResult.Wait();
            if (asyncResult.Status != System.Threading.Tasks.TaskStatus.RanToCompletion)
            {
                throw asyncResult.Exception;
            }
            var result = asyncResult.Result;

            if (!string.IsNullOrEmpty(result))
            {
                var comments = JsonConvert.DeserializeObject <List <Comment> >(result);
                if (string.IsNullOrWhiteSpace(settings.Filter))
                {
                    RecordsList = comments;
                }
                else
                {
                    RecordsList = comments.Where(x => x.Email.IndexOf(settings.Filter, StringComparison.OrdinalIgnoreCase) > -1 ||
                                                 x.Name.IndexOf(settings.Filter, StringComparison.OrdinalIgnoreCase) > -1 ||
                                                 x.Body.IndexOf(settings.Filter, StringComparison.OrdinalIgnoreCase) > -1)
                                  .ToList();
                }
            }
        }
示例#22
0
        public override IEnumerable GetData(GetDataSettings settings)
        {
            var result = new List <object>();

            for (var i = 0; i < 10; i++)
            {
                result.Add(new
                {
                    Name  = "Item " + i,
                    Value = i
                });
            }
            return(result);
        }
示例#23
0
        public override IEnumerable GetData(GetDataSettings settings)
        {
            using (var session = Store.OpenSession())
            {
                var query = session.QueryOver <T>();
                (this as IBasicCrudView).OrderQuery(query);
                //OrderQuery(query);
                var result = query.Skip((settings.CurrentPage - 1) * settings.LinesPerPage)
                             .Take(settings.LinesPerPage)
                             .List <T>().ToList();

                return(result);
            }
        }
示例#24
0
        public override IEnumerable GetData(GetDataSettings settings)
        {
            var data = GetLogs()
                       .Skip((settings.CurrentPage - 1) * settings.LinesPerPage)
                       .Take(settings.LinesPerPage);

            //var result = new List<object>();
            var result = data.Select(d => new
            {
                Data = d
            });

            return(result);
        }
示例#25
0
        public override IList <T> RetrieveItemsWithFilter(GetDataSettings settings, IDictionary <string, object> additionalParameters)
        {
            using (var session = DataService.OpenSession())
            {
                var query = session.QueryOver <T>();
                query = CreateQueryForRetrieval(query, settings.Filter, additionalParameters);

                var results = query
                              .Skip((settings.CurrentPage - 1) * settings.LinesPerPage)
                              .Take(settings.LinesPerPage)
                              .List <T>()
                              .ToList();
                return(results);
            }
        }
示例#26
0
        public override IEnumerable GetData(GetDataSettings settings)
        {
            var result = new List <object>();

            foreach (var column in ColumnsToMap)
            {
                var item = new
                {
                    Field   = column.ColumnName,
                    Columns = column.ColumnNumbers,
                    rowId   = Guid.NewGuid().ToString()
                };
                result.Add(item);
            }

            return(result);
        }
示例#27
0
文件: CoreView.cs 项目: quintonn/QBic
 public virtual Dictionary <string, string> GetViewParameters(GetDataSettings settings)
 {
     return(new Dictionary <string, string>());
 }
示例#28
0
 public override int GetDataCount(GetDataSettings settings)
 {
     return(UserRoleService.RetrieveUserRoleCount(settings.Filter));
 }
示例#29
0
 public override IEnumerable GetData(GetDataSettings settings)
 {
     return(UserRoleService.RetrieveUserRoles(settings.CurrentPage, settings.LinesPerPage, settings.Filter));
 }
示例#30
0
 public override int GetDataCount(GetDataSettings settings)
 {
     // This is only called the first time the view is shown to get the total number of records
     DownloadData(settings);
     return(RecordsList.Count);
 }