/// <summary>
        /// Возвращает постраничный список шаблонов для контроллеров
        /// </summary>
        /// <param name="filter"></param>
        /// <returns></returns>
        public Paged<TemplateModel> GetTemplates(TemplateFilter filter)
        {
            using (var db = new CMSdb(_context))
            {
                var query = db.core_views
                    .Where(t => t.id != Guid.Empty);

                if (filter.Controller.HasValue)
                    query = query.Where(t => t.f_controller == filter.Controller.Value);

                if (!string.IsNullOrEmpty(filter.SearchText))
                    query = query.Where(t => t.c_name.ToLower().Contains(filter.SearchText.ToLower()));

                query = query.OrderBy(t => t.n_sort);

                int itemsCount = query.Count();

                var list = query
                    .Skip(filter.Size * (filter.Page - 1))
                    .Take(filter.Size).Select(s => new TemplateModel()
                    {
                        Id = s.id,
                        Title = s.c_name,
                        Desc = s.c_desc,
                        Controller = new ModuleModel()
                        {
                            Id = s.f_controller,
                            Name = db.core_controllers
                                                .Where(c => c.id == s.f_controller).Any()
                                                ? db.core_controllers.Where(c => c.id == s.f_controller).First().c_name
                                                : "!!! Возможно контроллер удален",
                        },
                        ViewPath = s.c_path,
                        Image = s.c_img,

                    });

                return new Paged<TemplateModel>()
                {
                    Items = list.ToArray(),
                    Pager = new PagerModel()
                    {
                        PageNum = filter.Page,
                        PageSize = filter.Size,
                        TotalCount = itemsCount
                    }
                };
            }
        }
Beispiel #2
0
        public static TemplateScopeContext CreateScope(Dictionary <string, object> args = null, TemplateFilter functions = null)
        {
            var context = new TemplateContext();

            if (functions != null)
            {
                context.TemplateFilters.Insert(0, functions);
            }

            context.Init();
            return(new TemplateScopeContext(new PageResult(context.OneTimePage("")), null, args));
        }
        public IHttpActionResult LoadTemplateData([FromBody] TemplateFilter filter)
        {
            var queryFilter = new VTemplateFilter();

            if (!UserInfoOperator.Instance.IsAdmin() || filter.IsOnlySelf)
            {
                queryFilter.CreatorLoginName = WebHelper.GetCurrentUser().LoginName;
            }
            //如果查看的为非自己的数据 则需要数据权限
            //if (!filter.IsOnlySelf)
            //{
            //    var startOrg = AuthHelper.GetPrivilegeStartOrg();
            //    queryFilter.UnitFullPath = startOrg;
            //}
            queryFilter.CreatorLoginOrName = filter.TemplateCreateLoginOrName;

            #region 获取时间范围
            DateTime date = DateTime.MinValue.ValidateSqlMinDate();
            if (filter.TimeRange.HasValue)
            {
                switch (filter.TimeRange)
                {
                case 1:
                    date = DateTime.Today;
                    break;

                case 2:
                    date = DateTime.Now.AddDays(-1);
                    break;

                case 3:
                    date = DateTime.Now.AddDays(Convert.ToDouble((0 - Convert.ToInt16(DateTime.Now.DayOfWeek))) - 7);
                    break;

                case 4:
                    date = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(-1);
                    break;

                case 5:
                    date = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-01")).AddMonths(-3);
                    break;

                case 6:
                    date = DateTime.Parse(DateTime.Now.ToString("yyyy-01-01")).AddYears(-1);
                    break;
                }
            }

            #endregion
            queryFilter.TemplateName     = filter.TemplateName;
            queryFilter.CreatorTimeStart = date;
            queryFilter.PageIndex        = filter.PageIndex;
            queryFilter.PageSize         = filter.PageSize;
            //如果不是加载本地导入模板 则只查询非本地导入模板
            if (!filter.WithImport)
            {
                queryFilter.IsImport = 0;
            }
            var data      = TemplateOperator.Instance.GetViewList(queryFilter);
            var templates = data.Select(x =>
            {
                Template template = new Template();
                template.ConvertEntity(x);
                return(template);
            }).ToList();
            return(BizResult(new ViewData <Template>()
            {
                Data = templates, TotalCount = data.TotalCount
            }));
        }
Beispiel #4
0
 private async Task ClearAsync()
 {
     Filter = new TemplateFilter();
     await FilterChanged.Invoke(Filter);
 }
        public RuntimeProperties(ServiceConfigParameters ConfigParameters)
        {
            _ServiceConfigParameters = ConfigParameters;
            //personal
            _Staff_ID = new StaffID();
            _Full_Name = new FullName();
            _Country = new Country();
            _ContractType = new ContractType();
            _ContractTypeForReports = new ContractTypeForReports();
            _Position = new Position();
            _DateOfTREnd = new DateOfTREnd();
            _DateOfTRStart = new DateOfTRStart();
            _DateOfEntrance = new DateOfEntrance();
            _CalendarName = new CalendarName();
            _TemplateFilter = new TemplateFilter();
            _ArePropReadyPersonal = new ArePropReady();
            _BusinessUnitInfo = new BusinessUnitInfo();
            _PMSA = new PMSA();
            _PMSAItem = new PMSAItem();
            _Gender = new Gender();
            _ActivityCodeInfo = new ActivityCodeInfo();
            _OfficialLS = new OfficialLS();
            _PhoneDirOnly = new PhoneDirOnly();
            //update
            _SelectedDate = new SelectedDate();
            _SelectedDateStatus = new SelectedDateStatus();
            _SelectedDateTransactionStatus = new SelectedDateTransactionStatus();
            _SelectedDateType = new SelectedDateType();
            _SelectedDateisOptional = new SelectedDateisOptional();
            _PercentPerDay = new PercentPerDay();
            _SelectedJob = new SelectedJob();
            _MaxHoursDaily = new MaxHoursDaily();
            _ArePropReadyTRUpdate = new ArePropReady();
            _TRInputListClient = new TRInputListClient();
            _LastOpenDay = new LastOpenDay();

            //submit
            _SumOfHours = new SumOfHours();
            _TRInputList = new TRInputList();
            _WorkingHoursWeekly = new WorkingHoursWeekly();
            _MinHoursDaily = new MinHoursDaily();
            _FirstSubmitableDay = new FirstSubmitableDay();
            _SelectedActivityCode = new SelectedActivityCode();
            _Description = new Description();
            _Location = new Location();
            _BusinessUnit = new BusinessUnit();
            _ReasonCode = new ReasonCode();
            _ArePropReadyTRSubmit = new ArePropReady();
            _PeriodEnd = new PeriodEnd();
            //reports

            _PeriodStarting = new PeriodStarting();
            _ArePropReadyReports = new ArePropReady();
            _ReportIntervalFrom = new ReportIntervalFrom();
            _ReportIntervalTo = new ReportIntervalTo();
            _UserIDList = new UserIDList();
            _SelectedReportTemplate = new SelectedReportTemplate();
            _SelectedReportType = new SelectedReportType();

            //külön queryk-ben/Getparameters-ben kap értéket

            _LastSubmittedDay = new LastSubmittedDay();
            _JobCh = new JobCH();
            _InsertedHour = new InstertedHour();
            _ValidationConstraint = new ValidationConstraint();
            _JobFilter = new JobFilter();
            _ActivityCodeFilter = new ActivityCodeFilter();
            _UserGroup = new UserGroup();
            _ReasonCodeFilter = new ReasonCodeFilter();
        }