예제 #1
0
        /// <summary>
        /// 分页显示所有项目
        /// </summary>
        /// <returns></returns>
        //public ProjectProcGetResponse ProjectShow(ProjectProcGetRequest request)
        //{
        //    ProjectProcGetResponse response = new ProjectProcGetResponse();

        //    var PageIndex = request.PageIndex;
        //    var PageSize = request.PageSize;
        //    var ProjectNumber = request.ProjectNumber;
        //    var Count = request.TotalCount;
        //    var Projectstage = request.Projectstage;

        //    response.Project = dal.ProjectShow(PageIndex, PageSize, ProjectNumber, Projectstage, out Count);
        //    if (response.Project.Count > 0)
        //    {
        //        response.Message = "项目执行成功";
        //        response.IsRegistSuccess = true;
        //    }
        //    else
        //    {
        //        response.Message = "项目执行失败";
        //        response.IsRegistSuccess = false;
        //    }

        //    return response;
        //}


        /// <summary>
        /// 分页显示所有项目
        /// </summary>
        /// <returns></returns>
        public ProjectProcGetResponse ProjectShow(ProjectProcGetRequest request)
        {
            ProjectProcGetResponse response = new ProjectProcGetResponse();

            PageProperty page = new PageProperty()
            {
                PageIndex     = request.PageIndex,
                PageSize      = request.PageSize,
                ProjectNumber = request.ProjectNumber,
                Projectstage  = request.Projectstage,
            };

            var list = dal.ProjectShow(page);

            response.Project    = list.Project;
            response.TotalCount = list.TotalCount;
            if (response.Project.Count > 0)
            {
                response.Message         = "项目执行成功";
                response.IsRegistSuccess = true;
            }
            else
            {
                response.Message         = "项目执行失败";
                response.IsRegistSuccess = false;
            }

            return(response);
        }
예제 #2
0
        /// <summary>
        /// 获取当前页面的页面设置参数
        /// </summary>
        /// <param name="pageSettings">页面设置参数</param>
        /// <returns>DataLayer.SystemData.ReturnValue</returns>
        private void InitPageSettings()
        {
            if (this.m_pageSettings == null)
            {
                this.m_pageSettings = new PageSettings();
            }
            if (this.TextEditor == null)
            {
                return;
            }
            try
            {
                PageProperty pageProperty = new PageProperty();
                pageProperty.SetPropertyText(this.TextEditor.GetPageSetupInfo());
                if (pageProperty == null)
                {
                    return;
                }

                float zoom = this.TextEditor.ZoomPercentage / 100f;
                this.m_pageSettings.Width        = (int)Math.Round(pageProperty.Width / zoom);
                this.m_pageSettings.Height       = (int)Math.Round(pageProperty.Height / zoom);
                this.m_pageSettings.Landscape    = pageProperty.Landscape;
                this.m_pageSettings.LeftMargin   = (int)pageProperty.LeftMargin;
                this.m_pageSettings.RightMargin  = (int)pageProperty.RightMargin;
                this.m_pageSettings.TopMargin    = (int)pageProperty.TopMargin;
                this.m_pageSettings.BottomMargin = (int)pageProperty.BottomMargin;
                this.m_pageSettings.PageLayout   = pageProperty.PageLayout;
            }
            catch (Exception ex)
            {
                LogManager.Instance.WriteLog("ChenPadCtrl.InitPageSettings", ex);
            }
        }
예제 #3
0
 public IEnumerable <Pet> GetPage(PageProperty pageProperty)
 {
     //Updates data.
     for (int i = 0; i < _pets.Count; i++)
     {
         _pets[i].Colour        = _crep.GetById(_pets[i].Colour.Id);
         _pets[i].Type          = _ptrep.GetById(_pets[i].Type.Id);
         _pets[i].PreviousOwner = _prep.GetById(_pets[i].PreviousOwner.Id);
     }
     return(_pets.Skip((pageProperty.Page - 1) * pageProperty.Limit).Take(pageProperty.Limit));
 }
예제 #4
0
 public ActionResult <IEnumerable <Pet> > Get([FromQuery] PageProperty pageProperty)
 {
     try
     {
         return(_petService.GetPage(pageProperty));
     }
     catch (Exception e)
     {
         return(BadRequest(e.Message));
     }
 }
예제 #5
0
        /// <summary>
        /// To be used when paging is involved.
        /// </summary>
        public virtual IEnumerable <TEntity> GetPaged(PageProperty pageProperty,
                                                      Expression <Func <TEntity, bool> > filter = null,
                                                      string includeProperties = "")
        {
            IQueryable <TEntity> query = dbSet;

            Filter(query, filter);
            IncludeProperties(query, includeProperties);
            var orderedData = OrderBy(query, pageProperty.OrderByColumn, pageProperty.SortDirection);

            return(PagedData(orderedData, pageProperty));
        }
예제 #6
0
        /// <summary>
        /// 分页显示所有项目
        /// </summary>
        /// <returns></returns>
        //public List<ProjectInfo> ProjectShow(int PageIndex, int PageSize, string ProjectNumber, int Projectstage, out int TotalCount)
        //{
        //    var p = new DynamicParameters();
        //    p.Add("@Pageindex", PageIndex);
        //    p.Add("@PageSize", PageSize);
        //    p.Add("@ProjectNumber", ProjectNumber);
        //    p.Add("@Projectstage", Projectstage);
        //    p.Add("@TotalCount", 0, DbType.Int32, ParameterDirection.Output);

        //    var list = DapperHelper<ProjectInfo>.ExecutePro("dbo.P_ProjectShow", p);

        //    TotalCount = p.Get<int>("@TotalCount");

        //    return list;
        //}

        /// <summary>
        /// 分页显示所有项目
        /// </summary>
        /// <returns></returns>
        public PageProjectInfo ProjectShow(PageProperty page)
        {
            PageProjectInfo info = new PageProjectInfo();

            var p = new DynamicParameters();

            p.Add("@Pageindex", page.PageIndex);
            p.Add("@PageSize", page.PageSize);
            p.Add("@ProjectNumber", page.ProjectNumber);
            p.Add("@Projectstage", page.Projectstage);
            p.Add("@TotalCount", page.Projectstage, DbType.Int32, ParameterDirection.Output);

            info.Project = DapperHelper <ProjectInfo> .ExecutePro("dbo.P_ProjectShow", p);

            info.TotalCount = p.Get <int>("@TotalCount");

            return(info);
        }
예제 #7
0
        public IEnumerable <Pet> GetPage(PageProperty pageProperty)
        {
            if (pageProperty == null)
            {
                return(GetAll());
            }

            IQueryable <Pet> quaryPets = _ctx.Pets
                                         .Include(s => s.Colours).ThenInclude(pc => pc.Colour)
                                         .Include(s => s.Type)
                                         .Include(s => s.PreviousOwner);

            if (pageProperty.SortBy != null)
            {
                PropertyInfo propertyInfo = typeof(Pet).GetProperty(pageProperty.SortBy, BindingFlags.IgnoreCase | BindingFlags.Public | BindingFlags.Instance);

                if (propertyInfo == null)
                {
                    throw new RepositoryException($"Cannot sort by {pageProperty.SortBy} because it is not a property in Pet! Try another.");
                }

                if (pageProperty.SortOrder == null || pageProperty.SortOrder.ToLower().Equals("asc"))
                {
                    quaryPets = quaryPets.OrderBy(p => propertyInfo.GetValue(p, null));
                }
                else if (pageProperty.SortOrder.ToLower().Equals("desc"))
                {
                    quaryPets = quaryPets.OrderByDescending(p => propertyInfo.GetValue(p, null));
                }
                else
                {
                    throw new RepositoryException($"Sort order can only be 'asc' or 'desc'! Not {pageProperty.SortOrder}.");
                }
            }

            List <Pet> pets = quaryPets
                              .Skip((pageProperty.Page - 1) * pageProperty.Limit)
                              .Take(pageProperty.Limit)
                              .ToList();

            return(pets);
        }
예제 #8
0
        public void Delete_DeletesProperty()
        {
            //arrange
            var property = new PageProperty {
                Id = 1
            };

            _dbContextMock.Setup(x => x.GetDbSet <PageProperty>()).Returns(new InMemoryDbSet <PageProperty>
            {
                property
            });

            //act
            _propertyService.Delete(property.Id);

            //assert
            var deletedProperty = _dbContextMock.Object.GetDbSet <PageProperty>().FirstOrDefault(x => x.Id == property.Id);

            deletedProperty.Should().Be.Null();
        }
예제 #9
0
        public List <Pet> GetPage(PageProperty pageProperty)
        {
            if (pageProperty != null)
            {
                if (pageProperty.Page < 1)
                {
                    throw new ArgumentException("The page cannot be less than 1! Try another page.");
                }
                else if ((pageProperty.Page - 1) * pageProperty.Limit >= _prep.Count())
                {
                    throw new ArgumentException("Page not found! Try another page.");
                }
            }

            try
            {
                return(_prep.GetPage(pageProperty).ToList());
            }
            catch (Exception e)
            {
                throw new ServiceException("Error getting all pets: " + e.Message, e);
            }
        }
예제 #10
0
 public IEnumerable <Colour> GetPage(PageProperty pageProperty)
 {
     throw new NotImplementedException();
 }
예제 #11
0
 set => SetValue(PageProperty, value);
예제 #12
0
    public void Read(TProtocol iprot)
    {
        iprot.IncrementRecursionDepth();
        try
        {
            TField field;
            iprot.ReadStructBegin();
            while (true)
            {
                field = iprot.ReadFieldBegin();
                if (field.Type == TType.Stop)
                {
                    break;
                }
                switch (field.ID)
                {
                case 1:
                    if (field.Type == TType.Struct)
                    {
                        Person_property = new PersonProperty();
                        Person_property.Read(iprot);
                    }
                    else
                    {
                        TProtocolUtil.Skip(iprot, field.Type);
                    }
                    break;

                case 2:
                    if (field.Type == TType.Struct)
                    {
                        Page_property = new PageProperty();
                        Page_property.Read(iprot);
                    }
                    else
                    {
                        TProtocolUtil.Skip(iprot, field.Type);
                    }
                    break;

                case 3:
                    if (field.Type == TType.Struct)
                    {
                        Equiv = new EquivEdge();
                        Equiv.Read(iprot);
                    }
                    else
                    {
                        TProtocolUtil.Skip(iprot, field.Type);
                    }
                    break;

                case 4:
                    if (field.Type == TType.Struct)
                    {
                        Page_view = new PageViewEdge();
                        Page_view.Read(iprot);
                    }
                    else
                    {
                        TProtocolUtil.Skip(iprot, field.Type);
                    }
                    break;

                default:
                    TProtocolUtil.Skip(iprot, field.Type);
                    break;
                }
                iprot.ReadFieldEnd();
            }
            iprot.ReadStructEnd();
        }
        finally
        {
            iprot.DecrementRecursionDepth();
        }
    }
예제 #13
0
        public static void AddProperty(this PageNode pageNode, IUnitOfWork unitOfWork, PageProperty property)
        {
            //when creating entities EF doesn't instantiate proxy collections, so we need to force it to be instantiated using this hack :(
            if (pageNode.Properties == null)
            {
                var propertyDbSet = unitOfWork.Context.GetDbSet <PageProperty>();
                var newProperty   = propertyDbSet.Create();
                newProperty.ParentPageNode = pageNode;
                propertyDbSet.Add(newProperty);
                propertyDbSet.Remove(newProperty);
            }

            pageNode.Properties.Add(property);
        }
예제 #14
0
 private IEnumerable <TEntity> PagedData(IQueryable <TEntity> query, PageProperty pageProperty)
 {
     pageProperty.TotalRecords = query.Count();
     pageProperty.TotalPages   = (int)Math.Ceiling(pageProperty.TotalRecords / (float)pageProperty.Rows);
     return(query.Skip((pageProperty.Page - 1) * pageProperty.Rows).Take(pageProperty.Rows));
 }