Esempio n. 1
0
        private IQueryable <rent_package> IQRentPackage(List <SortingInfo> sortings = null, FilterInfo filters = null)
        {
            IQueryable <rent_package> list = context.rent_package;

            if (filters != null && (filters.Filters != null && filters.Filters.Count > 0))
            {
                filters.FormatFieldToUnderscore();
                GridHelper.ProcessFilters <rent_package>(filters, ref list);
            }

            if (sortings != null && sortings.Count > 0)
            {
                foreach (var s in sortings)
                {
                    s.FormatSortOnToUnderscore();
                    list = list.OrderBy <rent_package>(s.SortOn + " " + s.SortOrder);
                }
            }
            else
            {
                list = list.OrderBy <rent_package>("id desc"); //default, wajib ada atau EF error
            }

            return(list);
        }
Esempio n. 2
0
        public List <Module> Find(int skip = 0, int?take = null, List <SortingInfo> sortings = null, FilterInfo filters = null, string filterLogic = null)
        {
            IQueryable <Module> modules = context.Modules;

            if (filters != null && (filters.Filters != null && filters.Filters.Count > 0))
            {
                filters.FormatFieldToUnderscore();
                GridHelper.ProcessFilters <Business.Entities.Module>(filters, ref modules);
            }

            if (sortings != null && sortings.Count > 0)
            {
                foreach (var s in sortings)
                {
                    string sortOn = this.MapSort(s.SortOn);
                    modules = modules.OrderBy(sortOn + " " + s.SortOrder);
                }
            }
            else
            {
                modules = modules.OrderBy("ModuleName asc");
            }

            var takeModules = modules;

            if (take != null)
            {
                takeModules = modules.Skip(skip).Take((int)take);
            }

            List <Module> moduleList = takeModules.ToList();

            return(moduleList);
        }
Esempio n. 3
0
        public List <log> Find(int skip = 0, int?take = null, List <SortingInfo> sortings = null, FilterInfo filters = null)
        {
            IQueryable <log> atributes = context.log;

            if (filters != null && (filters.Filters != null && filters.Filters.Count > 0))
            {
                filters.FormatFieldToUnderscore();
                GridHelper.ProcessFilters <log>(filters, ref atributes);
            }

            if (sortings != null && sortings.Count > 0)
            {
                foreach (var s in sortings)
                {
                    string sortOn = this.MapSort(s.SortOn);
                    atributes = atributes.OrderBy(sortOn + " " + s.SortOrder);
                }
            }
            else
            {
                atributes = atributes.OrderBy("id desc");
            }

            var takeActions = atributes;

            if (take != null)
            {
                takeActions = atributes.Skip(skip).Take((int)take);
            }

            List <log> actionList = takeActions.ToList();

            return(actionList);
        }
Esempio n. 4
0
        private IQueryable <currency> IQCurrency(List <SortingInfo> sortings = null, FilterInfo filters = null)
        {
            //kamus
            IQueryable <currency> list = context.currency;
            string        sort         = "";
            List <string> sortArr      = new List <string>();

            //algoritma
            if (filters != null)
            {
                filters.FormatFieldToUnderscore();
                GridHelper.ProcessFilters <currency>(filters, ref list);
            }

            if (sortings != null && sortings.Count > 0)
            {
                foreach (var s in sortings)
                {
                    s.FormatSortOnToUnderscore();
                    sortArr.Add(s.SortOn + " " + s.SortOrder);
                }

                sort = string.Join(",", sortArr);
                list = list.OrderBy <currency>(sort);
            }
            else
            {
                list = list.OrderByDescending(m => m.id); //default, wajib ada atau EF error
            }

            list = list.Where(i => i.is_delete == false);

            return(list);
        }
        public List <Business.Entities.Action> Find(int skip = 0, int?take = null, List <SortingInfo> sortings = null, FilterInfo filters = null, string filterLogic = null)
        {
            IQueryable <Business.Entities.Action> actions = context.Actions;

            if (filters != null && (filters.Filters != null && filters.Filters.Count > 0))
            {
                filters.FormatFieldToUnderscore();
                GridHelper.ProcessFilters <Business.Entities.Action>(filters, ref actions);
            }

            if (sortings != null && sortings.Count > 0)
            {
                foreach (var s in sortings)
                {
                    s.FormatSortOnToUnderscore();
                    actions = actions.OrderBy <Business.Entities.Action>(s.SortOn + " " + s.SortOrder);
                }
            }
            else
            {
                actions = actions.OrderBy("id desc");
            }

            var takeActions = actions;

            if (take != null)
            {
                takeActions = actions.Skip(skip).Take((int)take);
            }

            List <Business.Entities.Action> actionList = takeActions.ToList();

            return(actionList);
        }
Esempio n. 6
0
        private IQueryable <api_rent> IQApiRent(List <SortingInfo> sortings = null, FilterInfo filters = null)
        {
            //kamus
            IQueryable <api_rent> list = context.api_rent;
            string     dateParam       = null;
            FilterInfo copyFilters     = null;

            //algoritma
            if (filters != null)
            {
                copyFilters = filters.Clone();
            }

            if (copyFilters != null && (copyFilters.Field != null || copyFilters.Filters != null))
            {
                copyFilters.FormatFieldToUnderscore();

                GridHelper.ProcessFilters <api_rent>(copyFilters, ref list);
            }

            if (sortings != null && sortings.Count > 0)
            {
                foreach (var s in sortings)
                {
                    s.FormatSortOnToUnderscore();
                    list = list.OrderBy <api_rent>(s.SortOn + " " + s.SortOrder);
                }
            }
            else
            {
                list = list.OrderBy <api_rent>("id desc"); //default, wajib ada atau EF error
            }

            return(list);
        }
Esempio n. 7
0
        private IQueryable <rent_position> IQRentPos(List <SortingInfo> sortings = null, FilterInfo filters = null)
        {
            //kamus
            IQueryable <rent_position> list = context.rent_position;
            string     dateParam            = null;
            FilterInfo copyFilters          = null;

            //algoritma
            if (filters != null)
            {
                copyFilters = filters.Clone();
            }

            if (copyFilters != null)
            {
                copyFilters.FormatFieldToUnderscore();

                dateParam = copyFilters.RemoveFilterField("filter_date");

                GridHelper.ProcessFilters <rent_position>(copyFilters, ref list);
            }

            //menangani date filter
            if (dateParam != null)
            {
                DateTime dt = DateTime.Parse(dateParam);
                dt = DateTime.SpecifyKind(dt, DateTimeKind.Utc);
                DateTimeOffset dto = dt;

                int diffHours = TimeZoneInfo.Local.BaseUtcOffset.Hours;
                int minutes   = diffHours * 60;


                //list = list.Where(m =>
                //    dto >= DbFunctions.TruncateTime(DbFunctions.AddMinutes(m.start_rent, minutes)) &&
                //    DbFunctions.TruncateTime(DbFunctions.AddMinutes(m.finish_rent, minutes)) >= dto);
            }

            if (sortings != null && sortings.Count > 0)
            {
                foreach (var s in sortings)
                {
                    s.FormatSortOnToUnderscore();
                    list = list.OrderBy <rent_position>(s.SortOn + " " + s.SortOrder);
                }
            }
            else
            {
                list = list.OrderBy <rent_position>("id desc"); //default, wajib ada atau EF error
            }

            return(list);
        }
Esempio n. 8
0
        public List <Crew_Whitelist> FindAll(int?skip = null, int?take = null, List <SortingInfo> sortings = null, FilterInfo filters = null)
        {
            IQueryable <Crew_Whitelist> list = context.Crew_Whitelist;

            if (filters != null && (filters.Filters != null && filters.Filters.Count > 0))
            {
                filters.FormatFieldToUnderscore();
                GridHelper.ProcessFilters <Crew_Whitelist>(filters, ref list);
            }

            if (sortings != null && sortings.Count > 0)
            {
                foreach (var s in sortings)
                {
                    s.FormatSortOnToUnderscore();
                    list = list.OrderBy <Crew_Whitelist>(s.SortOn + " " + s.SortOrder);
                }
            }
            else
            {
                list = list.OrderBy <Crew_Whitelist>("id desc"); //default, wajib ada atau EF error
            }

            //take & skip
            var takeList = list;

            if (skip != null)
            {
                takeList = takeList.Skip(skip.Value);
            }
            if (take != null)
            {
                takeList = takeList.Take(take.Value);
            }

            //return result
            //var sql = takeList.ToString();
            List <Crew_Whitelist> result = takeList.ToList();

            return(result);
        }
        /// <summary>
        /// </summary>
        /// <param name="skip"></param>
        /// <param name="take"></param>
        /// <param name="sortings"></param>
        /// <param name="filters"></param>
        /// <returns></returns>
        public List <log> Find(int?skip = null, int?take = null, List <SortingInfo> sortings = null, FilterInfo filters = null)
        {
            IQueryable <log> list = context.logs;

            if (filters != null && ((filters.Filters != null && filters.Filters.Count > 0) || (filters.Operator != null && filters.Operator != "")))
            {
                filters.FormatFieldToUnderscore();
                GridHelper.ProcessFilters <log>(filters, ref list);
            }

            if (sortings != null && sortings.Count > 0)
            {
                GridHelper.ProcessSorts <log>(sortings, ref list);
            }
            else
            {
                list = list.OrderByDescending(m => m.id); //default, wajib ada atau EF error
            }

            //filter
            //list = list.Where(i => i.show == 1);

            //take & skip
            var takeList = list;

            if (skip != null)
            {
                takeList = takeList.Skip(skip.Value);
            }
            if (take != null)
            {
                takeList = takeList.Take(take.Value);
            }

            //return result
            List <log> result = takeList.ToList();

            return(result);
        }
Esempio n. 10
0
        private IQueryable <car> IQCar(List <SortingInfo> sortings = null, FilterInfo filters = null)
        {
            //kamus
            IQueryable <car> list        = context.cars;
            FilterInfo       copyFilters = null;
            string           sort        = "";
            List <string>    sortArr     = new List <string>();

            //algoritma
            if (filters != null)
            {
                copyFilters = filters.Clone();
            }

            if (copyFilters != null && (copyFilters.Field != null || copyFilters.Filters != null))
            {
                copyFilters.FormatFieldToUnderscore();

                GridHelper.ProcessFilters <car>(copyFilters, ref list);
            }

            if (sortings != null && sortings.Count > 0)
            {
                foreach (var s in sortings)
                {
                    s.FormatSortOnToUnderscore();
                    sortArr.Add(s.SortOn + " " + s.SortOrder);
                }

                sort = string.Join(",", sortArr);
                list = list.OrderBy <car>(sort);
            }
            else
            {
                list = list.OrderBy <car>("id desc"); //default, wajib ada atau EF error
            }

            return(list);
        }
Esempio n. 11
0
        /// <summary>
        /// ada kemungkinan penanganan datetime with offset disamakan dengan fungsi find all yang 1 lagi
        /// filter khusus
        ///     filter_date: mengambil data rent dengan start <= filter_date <= end
        ///     without_invoice: mengambil data rent yang belum memiliki invoice
        ///     include_id: mengambil data rent dengan id = ...
        /// </summary>
        /// <param name="sortings"></param>
        /// <param name="filters"></param>
        /// <returns></returns>
        private IQueryable <rent> IQRent(List <SortingInfo> sortings = null, FilterInfo filters = null)
        {
            //kamus
            IQueryable <rent> list                = context.rents;
            string            dateParam           = null;
            string            withoutInvoiceParam = null;
            string            withoutExpenseParam = null;
            string            idParam             = null;
            FilterInfo        copyFilters         = null;

            //algoritma
            if (filters != null)
            {
                copyFilters = filters.Clone();
            }

            if (copyFilters != null && (copyFilters.Field != null || copyFilters.Filters != null))
            {
                copyFilters.FormatFieldToUnderscore();

                dateParam           = copyFilters.RemoveFilterField("filter_date");
                withoutInvoiceParam = copyFilters.RemoveFilterField("without_invoice");
                withoutExpenseParam = copyFilters.RemoveFilterField("without_expense");
                idParam             = copyFilters.RemoveFilterField("include_id");

                GridHelper.ProcessFilters <rent>(copyFilters, ref list);
            }

            //menangani date filter
            if (dateParam != null)
            {
                DateTime dt = DateTime.Parse(dateParam);
                dt = DateTime.SpecifyKind(dt, DateTimeKind.Utc);
                DateTimeOffset dto = dt;

                int diffHours = TimeZoneInfo.Local.BaseUtcOffset.Hours;
                int minutes   = diffHours * 60;

                list = list.Where(m =>
                                  dto >= DbFunctions.TruncateTime(DbFunctions.AddMinutes(m.start_rent, minutes)) &&
                                  DbFunctions.TruncateTime(DbFunctions.AddMinutes(m.finish_rent, minutes)) >= dto);
            }

            //menangani without invoice
            if (withoutInvoiceParam != null)
            {
                if (idParam == null)
                {
                    list = list.Where(m => m.invoices.Count() == 0);
                }
                else
                {
                    list = list.Where(m => m.id == new Guid(idParam) || m.invoices.Count() == 0);
                }
            }

            //menangani without expense
            if (withoutExpenseParam != null)
            {
                if (idParam == null)
                {
                    list = list.Where(m => m.expenses.Count() == 0);
                }
                else
                {
                    list = list.Where(m => m.id == new Guid(idParam) || m.expenses.Count() == 0);
                }
            }

            if (sortings != null && sortings.Count > 0)
            {
                foreach (var s in sortings)
                {
                    s.FormatSortOnToUnderscore();
                    list = list.OrderBy <rent>(s.SortOn + " " + s.SortOrder);
                }
            }
            else
            {
                list = list.OrderBy <rent>("id desc"); //default, wajib ada atau EF error
            }

            return(list);
        }