Exemplo n.º 1
0
 /// <summary> Convert Book to string.</summary>
 /// <returns>String representation.</returns>
 public override string ToString()
 {
     return("Isbn: " + Isbn + ", Name: " + Name + ", Author: " + Author + ", Publisher: " +
            Publisher + ", Year of publication: " + PublicationYear.ToString() + ", Count of page: " +
            PageCount.ToString() + ", Price: " + Price.ToString());
 }
Exemplo n.º 2
0
        public static SubArray </*Type[0]*/ ulong /*Type[0]*/> GetPageSort/*Compare[0]*//*Compare[0]*/ (this SubArray </*Type[0]*/ ulong /*Type[0]*/> array, int pageSize, int currentPage)
        {
            PageCount page = new PageCount(array.Length, pageSize, currentPage);

            return(AutoCSer.Algorithm.FixedArrayQuickRangeSort.UnsafeGetRangeSort/*Compare[0]*//*Compare[0]*/ (array.Array, array.Start, array.Length, page.SkipCount, page.CurrentPageSize));
        }
Exemplo n.º 3
0
        public static returnType[] GetPageSortDesc <valueType, returnType>(this LeftArray <valueType> array, Func <valueType, ulong> getKey, int pageSize, int currentPage, Func <valueType, returnType> getValue, out int count)
        {
            PageCount page = new PageCount(count = array.Length, pageSize, currentPage);

            return(AutoCSer.Algorithm.FixedArrayQuickRangeSort.UnsafeGetRangeSortDesc(array.Array, 0, count, getKey, page.SkipCount, page.CurrentPageSize, getValue));
        }
Exemplo n.º 4
0
        public override string ToString()
        {
            if (PageCount <= 1)
            {
                return("");
            }

            int curPage = PageCurrent + 1;
            var pages   = new List <string>();

            // handle simplest case first: only a few pages!
            if (PageCount <= _cellcount)
            {
                for (int i = 1; i <= PageCount; i++)
                {
                    pages.Add(i.ToString());
                }
            }
            else
            {
                if (curPage < _cellcount - 1)
                {
                    // we're near the start
                    for (int i = 1; i < _cellcount; i++)
                    {
                        pages.Add(i.ToString());
                    }
                    pages.Add(PAGER_DOTS);
                    pages.Add(PageCount.ToString());
                }
                else if (curPage > PageCount - _cellcount + 2)
                {
                    // we're near the end
                    pages.Add("1");
                    pages.Add(PAGER_DOTS);
                    for (int i = PageCount - _cellcount + 2; i <= PageCount; i++)
                    {
                        pages.Add(i.ToString());
                    }
                }
                else
                {
                    // we're in the middle, somewhere
                    pages.Add("1");
                    pages.Add(PAGER_DOTS);
                    int range = _cellcount - 4;
                    for (int i = curPage - range; i <= curPage + range; i++)
                    {
                        pages.Add(i.ToString());
                    }
                    pages.Add(PAGER_DOTS);
                    pages.Add(PageCount.ToString());
                }
            }

            var sb = new StringBuilder(1024);

            if (CssClass.HasValue() || DivId.HasValue())
            {
                sb.Append("<div ");
                if (DivId.HasValue())
                {
                    sb.Append("id=\"");
                    sb.Append(DivId);
                    sb.Append("\" ");
                }
                if (CssClass.HasValue())
                {
                    sb.Append("class=\"");
                    sb.Append(CssClass);
                    sb.Append("\" ");
                }
                sb.AppendLine(">");
            }

            if (curPage > 1)
            {
                WriteCell(sb, _prev, "page-numbers");
            }
            foreach (string page in pages)
            {
                WriteCell(sb, page, "page-numbers");
            }
            if (curPage < PageCount)
            {
                WriteCell(sb, _next, "page-numbers");
            }

            if (CssClass.HasValue() || DivId.HasValue())
            {
                sb.AppendLine("</div>");
            }

            return(sb.ToString());
        }
Exemplo n.º 5
0
        protected override void Render(HtmlTextWriter writer)
        {
            base.PagerSettings.Visible = false;

            writer.Write("<table style=\"width:100%;border-collapse:collapse;\"><tr><td>");
            this.Width = Unit.Parse("100%");
            base.Render(writer);
            this.HeaderStyle.HorizontalAlign = HorizontalAlign.Center;
            this.RowStyle.HorizontalAlign    = HorizontalAlign.Left;
            if (!blnHasDataRow && this.DataSource != null)
            {
                writer.Write("</td></tr><tr><td style=\"font-size:12px;color: #FF0000;\">");
                writer.Write(strNoneData);
                writer.Write("</td></tr></table>");
            }
            else
            {
                if (this.AllowPaging && PageCount > 1)
                {
                    writer.Write("</td></tr><tr><td style=\"font-size:12px;\">");
                    HtmlTable    paperTable = new HtmlTable();
                    HtmlTableRow row        = new HtmlTableRow();

                    if (this.PageIndex != 0)
                    {
                        if (PagerSettings.FirstPageImageUrl != string.Empty && PagerSettings.FirstPageImageUrl != "")
                        {
                            row.Cells.Add(GetLinkCell(this.PagerSettings.FirstPageImageUrl, "javascript:__doPostBack('" + this.ID + "_FirstButton','Page$First')", true));
                        }
                        else
                        {
                            row.Cells.Add(GetLinkCell(this.PagerSettings.FirstPageText, "javascript:__doPostBack('" + this.ID + "_FirstButton','Page$First')", false));
                        }
                        if (PagerSettings.PreviousPageImageUrl != string.Empty && PagerSettings.PreviousPageImageUrl != "")
                        {
                            row.Cells.Add(GetLinkCell(this.PagerSettings.PreviousPageImageUrl, "javascript:__doPostBack('" + this.ID + "_PrevButton','Page$Prev')", true));
                        }
                        else
                        {
                            row.Cells.Add(GetLinkCell(this.PagerSettings.PreviousPageText, "javascript:__doPostBack('" + this.ID + "_PrevButton','Page$Prev')", false));
                        }
                    }
                    int intFirstIndex = (PageIndex % 10 == 0 ? PageIndex : PageIndex / 10 * 10) + 1;
                    int intLastIndex  = intFirstIndex + 10;
                    intLastIndex  = (intLastIndex > PageCount ? PageCount : intLastIndex);
                    intFirstIndex = ((intFirstIndex - 1) > 0 ? (intFirstIndex - 1) : intFirstIndex);
                    for (int index = intFirstIndex; index <= intLastIndex; index++)
                    {
                        if (index == this.PageIndex + 1)
                        {
                            HtmlTableCell cell = new HtmlTableCell();
                            cell.InnerHtml = index.ToString();
                            row.Cells.Add(cell);
                        }
                        else
                        {
                            row.Cells.Add(GetLinkCell(index.ToString(), "javascript:__doPostBack('" + this.ID + "_NumberButton','" + index.ToString() + "')", false));
                        }
                    }

                    if (this.PageIndex != this.PageCount - 1)
                    {
                        if (this.PagerSettings.NextPageImageUrl != string.Empty && this.PagerSettings.NextPageImageUrl != "")
                        {
                            row.Cells.Add(GetLinkCell(this.PagerSettings.NextPageImageUrl, "javascript:__doPostBack('" + this.ID + "_NextButton','Page$Next')", true));
                        }
                        else
                        {
                            row.Cells.Add(GetLinkCell(this.PagerSettings.NextPageText, "javascript:__doPostBack('" + this.ID + "_NextButton','Page$Next')", false));
                        }
                        if (this.PagerSettings.LastPageImageUrl != string.Empty && this.PagerSettings.LastPageImageUrl != "")
                        {
                            row.Cells.Add(GetLinkCell(this.PagerSettings.LastPageImageUrl, "javascript:__doPostBack('" + this.ID + "_LastButton','Page$Last')", true));
                        }
                        else
                        {
                            row.Cells.Add(GetLinkCell(this.PagerSettings.LastPageText, "javascript:__doPostBack('" + this.ID + "_LastButton','Page$Last')", false));
                        }
                    }
                    HtmlTableCell htcPageCount  = new HtmlTableCell();
                    int           intPageNumber = this.PageIndex + 1;
                    htcPageCount.InnerText = " " + intPageNumber.ToString() + "/" + this.PageCount + strPageString + " ";
                    row.Cells.Add(htcPageCount);
                    HtmlTableCell htcPageBox = new HtmlTableCell();
                    HtmlInputText hipPageBox = new HtmlInputText();
                    hipPageBox.Size  = 2;
                    hipPageBox.Value = intPageNumber.ToString();
                    HtmlInputHidden hihPageBox = new HtmlInputHidden();
                    hihPageBox.Value = PageCount.ToString();
                    HtmlInputButton hibPageBox = new HtmlInputButton();
                    hibPageBox.Attributes.Add("onclick", "GridViewPageingByDB_GoPage(this);");
                    hibPageBox.Value = "Go";
                    htcPageBox.Controls.Add(hipPageBox);
                    htcPageBox.Controls.Add(hihPageBox);
                    htcPageBox.Controls.Add(hibPageBox);
                    row.Cells.Add(htcPageBox);
                    paperTable.Rows.Add(row);
                    paperTable.RenderControl(writer);
                }

                writer.Write("</td></tr></table>");
            }
        }
Exemplo n.º 6
0
 /// <summary>
 /// Add Page
 /// </summary>
 private void InitPART_Content()
 {
     PageCountText    = PageCount.ToString();
     this.CurrentPage = 1;
     SetNextpageAndPreviouspageState();
     this.PART_Content.Children.RemoveRange(0, PART_Content.Children.Count);
     this.mCurrentPagers.RemoveRange(0, mCurrentPagers.Count);
     if ((this.PageCount <= PageNumber))
     {
         this.mPagerType = PagerType.Default;
         for (int i = 0; i < this.PageCount; i++)
         {
             var pagenumBtn = new Button()
             {
                 Content             = (i + 1).ToString(),
                 Width               = 17,
                 Margin              = new Thickness(2, 0, 2, 0),
                 BorderThickness     = new Thickness(1, 0, 0, 0),
                 VerticalAlignment   = VerticalAlignment.Center,
                 HorizontalAlignment = HorizontalAlignment.Center,
                 Style               = Application.Current.FindResource("PageNumberButton") as Style
             };
             this.mCurrentPagers.Add((i + 1));
             pagenumBtn.Click += PagenumBtn_Click;
             if (this.PART_Content != null)
             {
                 this.PART_Content.Children.Add(pagenumBtn);
             }
         }
     }
     else
     {
         this.mPagerType = PagerType.Complex;
         for (int i = 0; i < PageNumber; i++)
         {
             var pagenumBtn = new Button()
             {
                 Content             = (i + 1).ToString(),
                 Width               = 17,
                 Margin              = new Thickness(2, 0, 2, 0),
                 BorderThickness     = new Thickness(1, 0, 0, 0),
                 VerticalAlignment   = VerticalAlignment.Center,
                 HorizontalAlignment = HorizontalAlignment.Center,
                 Style               = Application.Current.FindResource("PageNumberButton") as Style
             };
             pagenumBtn.Click += PagenumBtn_Click;
             if (i.Equals(0))
             {
                 pagenumBtn.Tag = 1;               //Set the left control point
             }
             if (i.Equals(PageNumber - 1))
             {
                 pagenumBtn.Tag = PageNumber;                            //Set the right control point
             }
             this.mCurrentPagers.Add((i + 1));
             if (this.PART_Content != null)
             {
                 this.PART_Content.Children.Add(pagenumBtn);
             }
         }
     }
     SetLinkButtonFocus(0);
 }
        public override String ajax_MasterGridData(q_ProductData queryObj)
        {
            #region 連接BusinessLogicLibary資料庫並取得資料
            ac = new a_ProductData()
            {
                Connection = getSQLConnection(), logPlamInfo = plamInfo
            };;

            RunQueryPackage <m_ProductData> HResult = ac.SearchMaster(queryObj, LoginUserId);
            HandleResultCheck(HResult);
            #endregion
            #region 設定 Page物件 頁數 總筆數 每頁筆數
            int page        = (queryObj.page == null ? 1 : queryObj.page.CInt());
            int startRecord = PageCount.PageInfo(page, this.DefPageSize, HResult.Count);
            #endregion
            #region 每行及每個欄位資料組成
            List <RowElement> setRowElement = new List <RowElement>();
            var Modules = HResult.SearchData.Skip(startRecord).Take(this.DefPageSize);

            a_ProductKind c = new a_ProductKind()
            {
                Connection = getSQLConnection(), logPlamInfo = plamInfo
            };
            RunQueryPackage <m_ProductKind> hResult = c.SearchMaster(new q_ProductKind(), LoginUserId);
            var Series = new String[] { "", "屏風系列", "辦公桌系列", "會議桌系列", "檔案櫃系列", "主管辦公桌系列", "辦公椅系列", "沙發系列", "", "", "其他商品", "造型椅 / 吧檯椅", "新進商品", "特價商品" };
            foreach (m_ProductData md in Modules)
            {
                List <String> setFields = new List <String>(10);
                //JQGrid Col
                int sid = 0;
                if (hResult.SearchData.AsQueryable().Where(m_ProductData => m_ProductData.ID == md.Kind).Any())
                {
                    sid = hResult.SearchData.AsQueryable().Where(m_ProductData => m_ProductData.ID == md.Kind).First().Series;
                }

                setFields.Add(md.ID.ToString());
                setFields.Add(md.Name);
                setFields.Add(md.Price);
                setFields.Add(md.IsOpen.BooleanValue(BooleanSheet.yn));
                setFields.Add(Series[sid]);
                setFields.Add(hResult.SearchData.AsQueryable().Where(m_ProductData => m_ProductData.ID == md.Kind).First().Name);
                setFields.Add(md.IsSecond.BooleanValue("二手", "全新"));
                //setFields.Add(md.IsOnSell.BooleanValue(BooleanSheet.yn));
                setFields.Add(md.IsDisp.BooleanValue(BooleanSheet.yn));
                //setFields.Add(md.IsNew.BooleanValue(BooleanSheet.yn));
                setFields.Add(md.Sort.ToString());


                setRowElement.Add(new RowElement()
                {
                    id = md.ID.ToString(), cell = setFields.ToArray()
                });
            }
            #endregion
            #region 回傳JSON資料

            return(JsonConvert.SerializeObject(new JQGridDataObject()
            {
                rows = setRowElement.ToArray(),
                total = PageCount.TotalPage,
                page = PageCount.Page,
                records = PageCount.RecordCount
            }, new JsonSerializerSettings()
            {
                NullValueHandling = NullValueHandling.Ignore
            }));

            #endregion
        }
Exemplo n.º 8
0
 public override string Render()
 {
     Attributes["pageCount"] = PageCount.ToString();
     return(base.Render());
 }
Exemplo n.º 9
0
        private string RenderLast()
        {
            string templateCell = "<td class=\"PagerOtherPageCells\"><a class=\"PagerHyperlinkStyle\" href=\"{0}\" title=\"" + " " + GoToLastClause + " " + "\"> " + LastClause + " </a></td>";

            return(String.Format(templateCell, Page.ClientScript.GetPostBackClientHyperlink(this, PageCount.ToString())));
        }
Exemplo n.º 10
0
        protected override void Render(HtmlTextWriter writer)
        {
            if (Page != null)
            {
                Page.VerifyRenderingInServerForm(this);
            }

            if (this.PageCount > this.SmartShortCutThreshold && GenerateSmartShortCuts)
            {
                CalculateSmartShortcutAndFillList();
            }

            writer.AddAttribute(HtmlTextWriterAttribute.Cellpadding, "3");
            writer.AddAttribute(HtmlTextWriterAttribute.Cellspacing, "1");
            writer.AddAttribute(HtmlTextWriterAttribute.Border, "0");
            writer.AddAttribute(HtmlTextWriterAttribute.Class, "PagerContainerTable");
            if (RTL)
            {
                writer.AddAttribute(HtmlTextWriterAttribute.Dir, "rtl");
            }
            writer.RenderBeginTag(HtmlTextWriterTag.Table);
            writer.RenderBeginTag(HtmlTextWriterTag.Tr);

            if (GeneratePagerInfoSection)
            {
                writer.AddAttribute(HtmlTextWriterAttribute.Class, "PagerInfoCell");
                writer.RenderBeginTag(HtmlTextWriterTag.Td);
                writer.Write(PageClause + " " + CurrentIndex.ToString() + " " + OfClause + " " + PageCount.ToString());
                writer.RenderEndTag();
            }

            if (GenerateFirstLastSection && CurrentIndex != 1)
            {
                writer.Write(RenderFirst());
            }

            if (CurrentIndex != 1)
            {
                writer.Write(RenderBack());
            }

            if (CurrentIndex < CompactModePageCount)
            {
                if (CompactModePageCount > PageCount)
                {
                    CompactModePageCount = PageCount;
                }

                for (int i = 1; i < CompactModePageCount + 1; i++)
                {
                    if (i == CurrentIndex)
                    {
                        writer.Write(RenderCurrent());
                    }
                    else
                    {
                        writer.Write(RenderOther(i));
                    }
                }

                RenderSmartShortCutByCriteria(CompactModePageCount, true, writer);
            }
            else if (CurrentIndex >= CompactModePageCount && CurrentIndex < NormalModePageCount)
            {
                if (NormalModePageCount > PageCount)
                {
                    NormalModePageCount = PageCount;
                }

                for (int i = 1; i < NormalModePageCount + 1; i++)
                {
                    if (i == CurrentIndex)
                    {
                        writer.Write(RenderCurrent());
                    }
                    else
                    {
                        writer.Write(RenderOther(i));
                    }
                }

                RenderSmartShortCutByCriteria(NormalModePageCount, true, writer);
            }
            else if (CurrentIndex >= NormalModePageCount)
            {
                int gapValue  = NormalModePageCount / 2;
                int leftBand  = CurrentIndex - gapValue;
                int rightBand = CurrentIndex + gapValue;


                RenderSmartShortCutByCriteria(leftBand, false, writer);

                for (int i = leftBand; (i < rightBand + 1) && i < PageCount + 1; i++)
                {
                    if (i == CurrentIndex)
                    {
                        writer.Write(RenderCurrent());
                    }
                    else
                    {
                        writer.Write(RenderOther(i));
                    }
                }

                if (rightBand < this.PageCount)
                {
                    RenderSmartShortCutByCriteria(rightBand, true, writer);
                }
            }

            if (CurrentIndex != PageCount)
            {
                writer.Write(RenderNext());
            }

            if (GenerateFirstLastSection && CurrentIndex != PageCount)
            {
                writer.Write(RenderLast());
            }

            if (GenerateGoToSection)
            {
                writer.Write(RenderGoTo());
            }

            writer.RenderEndTag();

            writer.RenderEndTag();

            if (GenerateGoToSection)
            {
                writer.Write(RenderGoToScript());
            }

            if (GenerateHiddenHyperlinks)
            {
                writer.Write(RenderHiddenDiv());
            }
        }
Exemplo n.º 11
0
 private void BTN_LAST_Click(object sender, EventArgs e)
 {
     this.NUM_PAGE.Text = PageCount.ToString();
     this.EventPaging(new EventPagingArg(this.PageIndex));
 }
Exemplo n.º 12
0
        private void BindGridView(int pageIndex)
        {
            BindCount++;


            int RecordCount, PageCount;

            DataParameter[] paras = new DataParameter[] {
                new DataParameter("{0}", queryFields),
                new DataParameter("{1}", TableView),
                new DataParameter("{2}", strWhere),
                new DataParameter("{3}", orderBy)
            };
            dtData = bll.GetDataPage("Security.SelectDataPage", pageIndex, PageSize, out RecordCount, out PageCount, paras);


            if (CurrentPage == 0)
            {
                CurrentPage = PageCount;
            }
            if (RecordCount != 0)
            {
                this.btnLast.Enabled   = true;
                this.btnFirst.Enabled  = true;
                this.btnToPage.Enabled = true;

                if (CurrentPage > 1)
                {
                    this.btnPre.Enabled = true;
                }
                else
                {
                    this.btnPre.Enabled = false;
                }

                if (CurrentPage < PageCount)
                {
                    this.btnNext.Enabled = true;
                }
                else
                {
                    this.btnNext.Enabled = false;
                }

                lblCurrentPage.Visible = true;
                lblCurrentPage.Text    = "共 [" + RecordCount.ToString() + "] 笔记录  第 [" + CurrentPage.ToString() + "] 页  共 [" + PageCount.ToString() + "] 页";
            }
            else
            {
                this.btnFirst.Enabled  = false;
                this.btnPre.Enabled    = false;
                this.btnNext.Enabled   = false;
                this.btnLast.Enabled   = false;
                this.btnToPage.Enabled = false;
                lblCurrentPage.Visible = false;
            }
            if (BindCount == 1)
            {
                dtSelect = dtData.Clone();
            }
            this.dgView.DataSource = dtData.DefaultView;
            SetColumnHeadName();
        }
        public async Task <IHttpActionResult> Get([FromUri] q_GiftRecord q)
        {
            #region 連接BusinessLogicLibary資料庫並取得資料

            using (db0 = getDB0())
            {
                var qr = db0.GiftRecord
                         .Where(x => x.company_id == this.companyId)
                         .OrderByDescending(x => x.gift_record_id).AsQueryable();


                if (q.name != null)
                {
                    qr = qr.Where(x => x.CustomerBorn.mom_name.Contains(q.name) ||
                                  x.record_sn.Contains(q.name) ||
                                  x.CustomerBorn.sno.Contains(q.name) ||
                                  x.CustomerBorn.tel_1.Contains(q.name));
                }

                if (q.activity_name != null)
                {
                    qr = qr.Where(x => x.Activity.activity_name.Contains(q.activity_name));
                }

                if (q.receive_state != null)
                {
                    qr = qr.Where(x => x.receive_state == q.receive_state);
                }
                if (q.born_id != null)
                {
                    qr = qr.Where(x => x.born_id == q.born_id);
                }

                var result = qr.Select(x => new m_GiftRecord()
                {
                    gift_record_id    = x.gift_record_id,
                    product_record_id = x.product_record_id,
                    record_sn         = x.record_sn,
                    mom_name          = x.CustomerBorn.mom_name,
                    sno           = x.CustomerBorn.sno,
                    tel_1         = x.CustomerBorn.tel_1,
                    activity_name = x.Activity.activity_name,
                    receive_state = x.receive_state
                });


                int page     = (q.page == null ? 1 : (int)q.page);
                int position = PageCount.PageInfo(page, this.defPageSize, qr.Count());
                var segment  = await result.Skip(position).Take(this.defPageSize).ToListAsync();

                return(Ok <GridInfo <m_GiftRecord> >(new GridInfo <m_GiftRecord>()
                {
                    rows = segment,
                    total = PageCount.TotalPage,
                    page = PageCount.Page,
                    records = PageCount.RecordCount,
                    startcount = PageCount.StartCount,
                    endcount = PageCount.EndCount
                }));
            }
            #endregion
        }
Exemplo n.º 14
0
        private string RenderLast()
        {
            string templateCell = "<a title=\"" + GoToLastClause + "\" class=\"nextprev\" href=\"{0}\">" + LastClause + "</a>";

            return(String.Format(templateCell, Page.ClientScript.GetPostBackClientHyperlink(this, PageCount.ToString())));
        }
Exemplo n.º 15
0
        //尾页链接
        private string RenderLast()
        {
            string templateCell = "<td class=\"PagerOtherPageCells\"><a onclick=\"{0}\">" + lastEnable + "</a></td>";

            return(String.Format(templateCell, Page.ClientScript.GetPostBackClientHyperlink(this, PageCount.ToString())));
        }
Exemplo n.º 16
0
        public async Task <IHttpActionResult> getRemitList([FromUri] RemitParam q)
        {
            #region 連接BusinessLogicLibary資料庫並取得資料

            db0 = getDB0();
            var predicate = PredicateBuilder.True <Purchase>();
            //只顯示轉帳付款、門市自取付款,且付款狀態為 已付款待確認、已付款
            predicate = predicate.And(x => (x.pay_type == (int)IPayType.Remit || x.pay_type == (int)IPayType.PayOnStore) & x.pay_state >= (int)IPayState.paid_uncheck);

            if (q.keyword != null)
            {
                predicate = predicate.And(x => x.purchase_no.Contains(q.keyword) ||
                                          x.receive_name.Contains(q.keyword));
            }

            if (q.state != null)
            {
                predicate = predicate.And(x => x.pay_state == q.state);
            }

            if (q.pay_start != null & q.pay_end != null)
            {
                DateTime start = (DateTime)q.pay_start;
                DateTime end   = ((DateTime)q.pay_end).AddDays(1);

                predicate = predicate.And(x => x.remit_date >= start & x.remit_date < end);
            }

            int page        = (q.page == null ? 1 : (int)q.page);
            var result      = db0.Purchase.AsExpandable().Where(predicate);
            var resultCount = await result.CountAsync();

            IQueryable <Purchase> resultOrderItems = null;

            if (q.field != null)
            {
                if (q.sort == "asc")
                {
                    resultOrderItems = result.OrderBy(q.field);
                }

                if (q.sort == "desc")
                {
                    resultOrderItems = result.OrderBy(q.field + " descending");
                }
            }
            else
            {
                resultOrderItems = result.OrderByDescending(x => x.remit_date);
            }

            int startRecord = PageCount.PageInfo(page, defPageSize, resultCount);
            var resultItems = await
                              resultOrderItems
                              .Skip(startRecord)
                              .Take(defPageSize)
                              .Select(x => new
            {
                x.purchase_no,
                x.customer_id,
                x.order_date,
                x.remit_date,                      //轉帳日期
                x.receive_name,                    //收件人
                customer_name = x.Customer.c_name, //購買人
                x.pay_type,                        //付款方式
                x.pay_state,                       //付款狀態
                x.ship_state,                      //出貨狀態
                x.remit_no,                        //付款帳號後五碼
                x.remit_money                      //轉帳金額
            })
                              .ToListAsync();

            db0.Dispose();

            return(Ok(new
            {
                rows = resultItems,
                total = PageCount.TotalPage,
                page = PageCount.Page,
                records = PageCount.RecordCount,
                startcount = PageCount.StartCount,
                endcount = PageCount.EndCount,
                field = q.field,
                sort = q.sort
            }));

            #endregion
        }
Exemplo n.º 17
0
        protected override void Render(HtmlTextWriter writer)
        {
            if (Page != null)
            {
                Page.VerifyRenderingInServerForm(this);
            }

            writer.AddAttribute(HtmlTextWriterAttribute.Cellpadding, "3");
            writer.AddAttribute(HtmlTextWriterAttribute.Cellspacing, "1");
            writer.AddAttribute(HtmlTextWriterAttribute.Border, "0");
            writer.AddAttribute(HtmlTextWriterAttribute.Class, "PagerContainerTable");

            writer.RenderBeginTag(HtmlTextWriterTag.Table);
            writer.RenderBeginTag(HtmlTextWriterTag.Tr);
            writer.AddAttribute(HtmlTextWriterAttribute.Class, "PagerInfoCell");
            writer.RenderBeginTag(HtmlTextWriterTag.Td);
            writer.Write(string.Format(RecordClause, PageSize, ItemCount) + " "
                         + string.Format(PageClause, CurrentIndex.ToString(), PageCount.ToString()) + " ");
            writer.RenderEndTag();

            if (CurrentIndex != 1)
            {
                writer.Write(RenderFirst());
            }
            else
            {
                writer.Write(RenderDisabledFirst());
            }

            if (CurrentIndex != 1)
            {
                writer.Write(RenderPrevious());
            }
            else
            {
                writer.Write(RenderDisabledPrevious());
            }

            if (CurrentIndex < PageCount)
            {
                writer.Write(RenderNext());
            }
            else
            {
                writer.Write(RenderDisabledNext());
            }

            if (CurrentIndex < PageCount)
            {
                writer.Write(RenderLast());
            }
            else
            {
                writer.Write(RenderDisabledLast());
            }

            writer.RenderEndTag();

            writer.RenderEndTag();

            base.Render(writer);
        }
Exemplo n.º 18
0
 public override int GetHashCode()
 {
     return(ISBN.GetHashCode() + Author.GetHashCode() +
            Name.GetHashCode() + PublishingHouse.GetHashCode()
            + YearPublish.GetHashCode() + PageCount.GetHashCode() + Price.GetHashCode());
 }
Exemplo n.º 19
0
 public override void Validate()
 {
     PageNumber.ThrowIfOutOfRange(nameof(PageNumber));
     PageCount.ThrowIfOutOfRange(nameof(PageCount));
 }
Exemplo n.º 20
0
        /// <summary>
        /// 得到数据
        /// </summary>
        public void ReadDataTable()
        {
            switch (_type)
            {
            case CSPNType.WellInfo:
                table = wellInfoService.GetWellInfo_Table(_info, pageSize, pageIndex, out recorderCount);
                break;

            case CSPNType.SysLogInfo:
                table = logservice.GetSystemLogInfo(pageSize, pageIndex, out recorderCount);
                break;

            case CSPNType.UserLogInfo_WellInfo:
                table = logservice.GetUserLogInfo_WellInfo(pageSize, pageIndex, out recorderCount);
                break;

            case CSPNType.UserLogInfo_GeneralInfo:
                table = logservice.GetUserLogInfo_GeneralInfo(pageSize, pageIndex, out recorderCount);
                break;

            case CSPNType.MaintainInfo:
                table = wellStateService.GetMaintainInfo(pageSize, pageIndex, out recorderCount);
                break;

            case CSPNType.OperatorInfo:
                table = userservice.GetOperator_Table(pageSize, pageIndex, out recorderCount);
                break;

            case CSPNType.UserInfo:
                table = userservice.GetUserInfo_Table(pageSize, pageIndex, out recorderCount);
                break;
            }
            //--控制
            lbPageSize.Text  = "每页" + pageSize.ToString() + "条";
            lbPageCount.Text = "/共" + PageCount.ToString() + "页";
            tbPageIndex.Text = pageIndex.ToString();
            btnLast.Tag      = PageCount;

            if (PageCount > 1 && PageCount > pageIndex)
            {
                btnNext.Enabled = true;
                btnLast.Enabled = true;
            }
            else
            {
                btnNext.Enabled = false;
                btnLast.Enabled = false;
            }

            if (pageIndex > 1 && pageIndex <= PageCount)
            {
                btnFirst.Enabled = true;
                btnPrev.Enabled  = true;
            }
            else
            {
                btnFirst.Enabled = false;
                btnPrev.Enabled  = false;
            }
            _grid.DataSource = table;
            table.Dispose();
        }
Exemplo n.º 21
0
        private void LoadPageData()
        {
            //一页显示的记录数
            //ltlPageSize.Text = PageSize.ToString();
            this.ddl_PageSize.SelectedValue = PageSize.ToString();
            //总页数
            ltlPageCount.Text = PageCount.ToString();

            //记录总数
            ltlRecordCount.Text = RecordCount.ToString();

            //记录数为0时,按钮全部禁用
            if (ltlPageCount.Text == "0")
            {
                txtCurrentPage.Enabled     = false;
                rvCurrentPage.MinimumValue = "0";
                rvCurrentPage.MaximumValue = "0";

                ibtnGo.Enabled       = false;
                lbtnFirst.Enabled    = false;
                lbtnPrevious.Enabled = false;
                lbtnNext.Enabled     = false;
                lbtnLast.Enabled     = false;
            }
            else
            {
                txtCurrentPage.Enabled     = true;
                rvCurrentPage.MinimumValue = "1";
                rvCurrentPage.MaximumValue = ltlPageCount.Text;

                ibtnGo.Enabled    = true;
                lbtnFirst.Enabled = true;

                //如果当前页数大于总页数,当前页数等于总页数
                if (CurrentPageIndex > PageCount)
                {
                    CurrentPageIndex = PageCount;
                    FirePageChanged();

                    return;
                }

                //设定上一页,下一页按钮启用状态
                if (CurrentPageIndex == 1)
                {
                    lbtnPrevious.Enabled = false;

                    if (ltlPageCount.Text != "1")
                    {
                        lbtnNext.Enabled = true;
                    }
                    else
                    {
                        lbtnNext.Enabled = false;
                    }
                }
                else if (CurrentPageIndex == PageCount)
                {
                    lbtnPrevious.Enabled = true;
                    lbtnNext.Enabled     = false;
                }
                else
                {
                    lbtnPrevious.Enabled = true;
                    lbtnNext.Enabled     = true;
                }

                lbtnLast.Enabled = true;
            }
            ////当索引页为首页是,清空跳转页数
            if (CurrentPageIndex == 1)
            {
                txtCurrentPage.Text = "";
            }
        }
Exemplo n.º 22
0
        public static SubArray <ulong> GetPageSortDesc(this LeftArray <ulong> array, int pageSize, int currentPage)
        {
            PageCount page = new PageCount(array.Length, pageSize, currentPage);

            return(AutoCSer.Algorithm.FixedArrayQuickRangeSort.UnsafeGetRangeSortDesc(array.Array, 0, array.Length, page.SkipCount, page.CurrentPageSize));
        }
Exemplo n.º 23
0
        public string QueryBuilder(string whereExpression = null)
        {
            var returnQueryString = "";

            QueryString = "SELECT " + (PageCount > 0 ? "TOP " + PageCount.ToString() + " " : "") +
                          "NULLIF(LTRIM(RTRIM(SCA.[Audit_Ser_Num])), '') AS [SERIAL_NO], " +
                          "NULLIF(LTRIM(RTRIM(SCA.[Audit_Part_Num])), '') AS [PART_NO], " +
                          "NULLIF(LTRIM(RTRIM(SCP.[Part_Desc])), '') AS [PART_DESC], " +
                          "NULLIF(LTRIM(RTRIM(SCP.[Part_Alt_Part_Num])), '') AS [PART_DESC_ALT], " +
                          "NULLIF(LTRIM(RTRIM(SCA.[Audit_Source_Site_Num])), '') AS [SOURCE_SITE_NO], " +
                          "NULLIF(LTRIM(RTRIM(SCA.[Audit_Dest_Site_Num])), '') AS [DESTINATION_SITE_NO], " +
                          "NULLIF(LTRIM(RTRIM(SCP.[Part_Type])), '') AS [PART_TYPE], " +
                          "NULLIF(LTRIM(RTRIM(SCA.[Audit_Rem])), '') AS [REMARK], " +
                          "NULLIF(LTRIM(RTRIM(SCA.[Audit_User])), '') AS [USER], " +
                          "SCA.[Audit_Move_Date] AS [MOVE_DATE], " +
                          "SCA.[Audit_Last_Update] AS [UPDATE_DATE] " +
                          "FROM [SCAudit] AS SCA (NOLOCK) ";
            QueryStringJoin = "FULL JOIN [SCPart] AS SCP ON SCA.[Audit_Part_Num] = SCP.[Part_Num] ";
            QueryString     = QueryString + QueryStringJoin;

            //if (string.IsNullOrEmpty(WhereExpression))
            if (StartDate > DateTime.MinValue)
            {
                if (TimeRange > 0)
                {
                    _whereExpression = "WHERE [Audit_Last_Update] >= CONVERT(DATETIME, '" + StartDate + "', 103) AND [Audit_Last_Update] <= CONVERT(DATETIME, '" + StartDate.AddHours(TimeRange) + "', 103) ";
                }
                else if (DateRange > 0)
                {
                    _whereExpression = "WHERE [Audit_Last_Update] >= CONVERT(DATETIME, '" + StartDate + "', 103) AND [Audit_Last_Update] <= CONVERT(DATETIME, '" + StartDate.AddDays(DateRange) + "', 103) ";
                }
                else if (EndDate > DateTime.MinValue && EndDate > DateTime.MinValue.AddDays(1))
                {
                    _whereExpression = "WHERE [Audit_Last_Update] >= CONVERT(DATETIME, '" + StartDate + "', 103) AND [Audit_Last_Update] <= CONVERT(DATETIME, '" + EndDate + "', 103) ";
                }
                else
                {
                    _whereExpression = "WHERE [Audit_Last_Update] >= CONVERT(DATETIME, '" + StartDate + "', 103) AND [Audit_Last_Update] <= CONVERT(DATETIME, '" + StartDate.AddDays(1) + "', 103) ";
                }
            }
            else
            {
                _whereExpression = "";
            }
            WhereExpression = !string.IsNullOrEmpty(WhereExpression) ? WhereExpression + "AND [Part_Type] != 'D' " : "WHERE [Part_Type] != 'D'";
            WhereExpression = string.IsNullOrEmpty(WhereExpression) ? _whereExpression :
                              string.IsNullOrEmpty(_whereExpression) ? WhereExpression : _whereExpression + WhereExpression.Replace("WHERE", "AND");

            OrderBy = !string.IsNullOrEmpty(OrderBy) ? OrderBy : _orderBy;

            LastQueryString = returnQueryString = QueryString + WhereExpression + OrderBy;
            if (QueryBuilderObject != null)
            {
                QueryBuilderObject.LastQueryString = LastQueryString;
            }

            // Need to reset the Where and Order by, otherwise they remain in memory for next request
            Reset();

            return(returnQueryString);
        }
        } = "";                                  // pagination-sm, pagination-lg
        #endregion

        // 페이지 로드할 때 페이저 구현하기
        protected void Page_Load(object sender, EventArgs e)
        {
            #region 검색 모드 결정: 검색 모드이면 SearchMode 속성이 true
            // 검색 모드 결정: 검색 모드이면 SearchMode 속성이 true
            if (
                !String.IsNullOrEmpty(HttpContext.Current.Request["SearchQuery"])
                &&
                !String.IsNullOrEmpty(HttpContext.Current.Request["SearchField"]))
            {
                SearchMode  = true;
                SearchField = EncodeSqlString(HttpContext.Current.Request["SearchField"]);
                SearchQuery = EncodeSqlString(HttpContext.Current.Request["SearchQuery"]);
            }
            #endregion

            string strPage = "";

            ++PageIndex; // 코드: 0, 1, 2 인덱스로 사용, UI: 1, 2, 3 페이지로 사용

            string pageItem  = "";
            string pageLink  = "";
            string alignment = "";
            if (UiFramework != "Bootstrap3")
            {
                strPage  += "<nav aria-lable=\"Page navigation\">";
                pageItem  = "page-item";
                pageLink  = "page-link";
                alignment = Alignment;
            }

            // <!--이전 10개, 다음 10개 페이징 처리 시작-->
            strPage += $"<ul class='pagination {Sizing} {alignment}'>";

            // 페이저 버튼 수만큼 반복
            int i = 0;

            #region 처음으로 이동: 1페이지로 이동 버튼
            if (PageIndex > 1)
            {
                // 검색 모드이면 추가적으로 SearchField와 SearchQuery를 전송함
                if (SearchMode)
                {
                    strPage += "<li class=\"" + pageItem + "\"><a class=\"" + pageLink + "\" href=\""
                               + Request.ServerVariables["SCRIPT_NAME"]
                               + "?BoardName=" + Request["BoardName"] // 멀티 게시판
                               + "&Page=1"
                               + "&SearchField=" + SearchField
                               + "&SearchQuery=" + SearchQuery + "\"><i class='fa fa-angle-double-left'>&nbsp;</i></a></li>";
                }
                else
                {
                    strPage += "<li class=\"" + pageItem + "\"><a class=\"" + pageLink + "\" href=\""
                               + Request.ServerVariables["SCRIPT_NAME"]
                               + "?BoardName=" + Request["BoardName"]
                               + "&Page=1"
                               + "\"><i class='fa fa-angle-double-left'>&nbsp;</i></a></li>";
                }
            }
            else
            {
                strPage += "<li class=\"disabled " + pageItem + "\"><a class=\"" + pageLink + "\"><i class='fa fa-angle-double-left'>&nbsp;</i></a></li>";
            }
            #endregion

            #region 이전 n개로 이동 버튼
            // 이전 n개 버튼
            if (PageIndex > PagerButtonCount)
            {
                // 검색 모드이면 추가적으로 SearchField와 SearchQuery를 전송함
                if (SearchMode)
                {
                    strPage += "<li class=\"" + pageItem + "\"><a class=\"" + pageLink + "\" href=\""
                               + Request.ServerVariables["SCRIPT_NAME"]
                               + "?BoardName=" + Request["BoardName"] // 멀티 게시판
                               + "&Page="
                               + Convert.ToString(((PageIndex - 1) / (int)PagerButtonCount) * PagerButtonCount)
                               + "&SearchField=" + SearchField
                               + "&SearchQuery=" + SearchQuery + "\"><i class='fa fa-angle-left'>&nbsp;</i></a></li>";
                }
                else
                {
                    strPage += "<li class=\"" + pageItem + "\"><a class=\"" + pageLink + "\" href=\""
                               + Request.ServerVariables["SCRIPT_NAME"]
                               + "?BoardName=" + Request["BoardName"]
                               + "&Page="
                               + Convert.ToString(((PageIndex - 1) / (int)PagerButtonCount) * PagerButtonCount)
                               + "\"><i class='fa fa-angle-left'>&nbsp;</i></a></li>";
                }
            }
            else
            {
                strPage += "<li class=\"disabled " + pageItem + "\"><a class=\"" + pageLink + "\"><i class='fa fa-angle-left'>&nbsp;</i></a></li>";
            }
            #endregion

            #region 숫자 페이저 버튼 구현하기
            // 가운데, 숫자 형식의 페이저 표시
            for (i = (((PageIndex - 1) / (int)PagerButtonCount) * PagerButtonCount + 1); i <= ((((PageIndex - 1) / (int)PagerButtonCount) + 1) * PagerButtonCount); i++)
            {
                if (i > PageCount)
                {
                    break; // 페이지 수보다 크면 종료
                }

                // 현재 보고 있는 페이지면 링크 제거
                if (i == PageIndex)
                {
                    strPage += " <li class='active " + pageItem + "'><a class=\"" + pageLink + "\" href='#'>" + i.ToString() + "</a></li>";
                }
                else
                {
                    if (SearchMode)
                    {
                        strPage += "<li class=\"" + pageItem + "\"><a class=\"" + pageLink + "\" href=\""
                                   + Request.ServerVariables["SCRIPT_NAME"]
                                   + "?BoardName=" + Request["BoardName"]
                                   + "&Page=" + i.ToString()
                                   + "&SearchField=" + SearchField
                                   + "&SearchQuery=" + SearchQuery + "\">"
                                   + i.ToString() + "</a></li>";
                    }
                    else
                    {
                        strPage += "<li class=\"" + pageItem + "\"><a class=\"" + pageLink + "\" href=\""
                                   + Request.ServerVariables["SCRIPT_NAME"]
                                   + "?BoardName=" + Request["BoardName"]
                                   + "&Page=" + i.ToString() + "\">"
                                   + i.ToString() + "</a></li>";
                    }
                }
            }
            #endregion

            #region 다음 n개로 이동 버튼
            // 다음 n개 링크
            if (i < PageCount)
            {
                if (SearchMode)
                {
                    strPage += "<li class=\"" + pageItem + "\"><a class=\"" + pageLink + "\" href=\""
                               + Request.ServerVariables["SCRIPT_NAME"]
                               + "?BoardName=" + Request["BoardName"]
                               + "&Page="
                               + Convert.ToString(((PageIndex - 1) / (int)PagerButtonCount) * PagerButtonCount + (PagerButtonCount + 1))
                               + "&SearchField=" + SearchField
                               + "&SearchQuery=" + SearchQuery + "\"><i class='fa fa-angle-right'>&nbsp;</i></a></li>";
                }
                else
                {
                    strPage += "<li class=\"" + pageItem + "\"><a class=\"" + pageLink + "\" href=\""
                               + Request.ServerVariables["SCRIPT_NAME"]
                               + "?BoardName=" + Request["BoardName"]
                               + "&Page="
                               + Convert.ToString(((PageIndex - 1) / (int)PagerButtonCount) * PagerButtonCount + (PagerButtonCount + 1))
                               + "\"><i class='fa fa-angle-right'>&nbsp;</i></a></li>";
                }
            }
            else
            {
                strPage += "<li class=\"disabled " + pageItem + "\"><a class=\"" + pageLink + "\"><i class='fa fa-angle-right'>&nbsp;</i></a></li>";
            }
            #endregion

            #region 마지막으로 이동: 마지막 페이지로 이동 버튼
            if (i < PageCount)
            {
                if (SearchMode)
                {
                    strPage += "<li class=\"" + pageItem + "\"><a class=\"" + pageLink + "\" href=\""
                               + Request.ServerVariables["SCRIPT_NAME"]
                               + "?BoardName=" + Request["BoardName"]
                               + "&Page=" + PageCount.ToString()
                               + "&SearchField=" + SearchField
                               + "&SearchQuery=" + SearchQuery + "\"><i class='fa fa-angle-double-right'>&nbsp;</i></a></li>";
                }
                else
                {
                    strPage += "<li class=\"" + pageItem + "\"><a class=\"" + pageLink + "\" href=\""
                               + Request.ServerVariables["SCRIPT_NAME"]
                               + "?BoardName=" + Request["BoardName"]
                               + "&Page=" + PageCount.ToString()
                               + "\"><i class='fa fa-angle-double-right'>&nbsp;</i></a></li>";
                }
            }
            else
            {
                strPage += "<li class=\"disabled " + pageItem + "\"><a class=\"" + pageLink + "\"><i class='fa fa-angle-double-right'>&nbsp;</i></a></li>";
            }
            #endregion

            // <!--이전 10개, 다음 10개 페이징 처리 종료-->
            strPage += "</ul>";

            if (UiFramework != "Bootstrap3")
            {
                strPage += "</nav>";
            }

            ctlAdvancedPaingWithBootstrap.Text = strPage;
        }
Exemplo n.º 25
0
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                ButtonInputAll.Attributes.Add("onclick", "return confirm('加入上面列表显示的全部考生可能需要较长时间,您确认吗 ?');");

                if (!string.IsNullOrEmpty(Request.QueryString.Get("selectType")))
                {
                    ButtonInputAll.Visible = false;
                }

                string strId = Request.QueryString.Get("id");
                ViewState["ExamID"] = strId;
                if (strId != null && strId != "")
                {
                    RandomExamArrangeBLL eaBll = new RandomExamArrangeBLL();
                    IList <RailExam.Model.RandomExamArrange> ExamArranges = eaBll.GetRandomExamArranges(int.Parse(strId));

                    if (ExamArranges.Count > 0)
                    {
                        ViewState["ChooseId"]   = ExamArranges[0].UserIds;
                        ViewState["UpdateMode"] = 1;
                    }
                    else
                    {
                        ViewState["ChooseId"]   = "";
                        ViewState["UpdateMode"] = 0;
                    }
                }

                BindStationStart();
                BindOrgStart();
                BindWorkShopStart();
                BindSystemStart();
                BindTypeStart();
                BindPostStart();

                ListItem item = new ListItem();
                item.Text  = "--请选择--";
                item.Value = "-1";
                ddlSafe.Items.Add(item);

                OracleAccess db     = new OracleAccess();
                string       strSql = "select * from ZJ_Safe_Level order by Order_Index";
                DataSet      ds     = db.RunSqlDataSet(strSql);
                foreach (DataRow dr in ds.Tables[0].Rows)
                {
                    item       = new ListItem();
                    item.Text  = dr["Safe_Level_Name"].ToString();
                    item.Value = dr["Safe_Level_ID"].ToString();
                    ddlSafe.Items.Add(item);
                }

                if (PrjPub.CurrentLoginUser.SuitRange != 1)
                {
                    ddlStation.SelectedValue = PrjPub.CurrentLoginUser.StationOrgID.ToString();
                    OrganizationBLL      objBll  = new OrganizationBLL();
                    IList <Organization> objList =
                        objBll.GetOrganizationsByParentID(Convert.ToInt32(ddlStation.SelectedValue));
                    foreach (Organization organization in objList)
                    {
                        item       = new ListItem();
                        item.Value = organization.OrganizationId.ToString();
                        item.Text  = organization.ShortName;
                        ddlWorkShop.Items.Add(item);
                    }
                }

                ViewState["StartRow"] = 0;
                ViewState["EndRow"]   = Grid1.PageSize;

                ViewState["EmploySortField"] = "nlssort(a.employee_name,'NLS_SORT=SCHINESE_PINYIN_M')";

                RecordCount = GetCount();
                //计算总页数(加上OverPage()函数防止有余数造成显示数据不完整)
                PageCount = RecordCount / Grid1.PageSize + OverPage();
                ViewState["RecordCount"] = RecordCount;
                //保存总页参数到ViewState(减去ModPage()函数防止SQL语句执行时溢出查询范围,可以用存储过程分页算法来理解这句)
                ViewState["PageCounts"] = RecordCount / Grid1.PageSize - ModPage();
                //保存一个为0的页面索引值到ViewState
                ViewState["PageIndex"] = 0;
                //保存PageCount到ViewState,跳页时判断用户输入数是否超出页码范围
                ViewState["JumpPages"] = PageCount;
                //显示LPageCount、LRecordCount的状态
                this.lbPageCount.Text   = PageCount.ToString();
                this.lbRecordCount.Text = RecordCount.ToString();
                //判断跳页文本框失效
                if (RecordCount <= Grid1.PageSize)
                {
                    btnJumpPage.Enabled = false;
                }
                else
                {
                    btnJumpPage.Enabled = true;
                }

                BindGrid(ViewState["EmploySortField"].ToString());
            }
        }
Exemplo n.º 26
0
        public string QueryBuilder(string whereExpression = null)
        {
            var returnQueryString = "";

            if (QueryBuilderObject != null)
            {
                base.DateRange        = QueryBuilderObject.DateRange;
                base.EndDate          = QueryBuilderObject.EndDate;
                base.EndDateInclusive = QueryBuilderObject.EndDateInclusive;
                base.EndDateString    = QueryBuilderObject.EndDateString;
                base.LastQueryString  = QueryBuilderObject.LastQueryString;
                base.OrderBy          = QueryBuilderObject.OrderBy;
                base.PageCount        = QueryBuilderObject.PageCount;
                base.SkipCount        = QueryBuilderObject.SkipCount;
                base.StartDate        = QueryBuilderObject.StartDate;
                base.StartDateString  = QueryBuilderObject.StartDateString;
                base.TimeRange        = QueryBuilderObject.TimeRange;
                base.WhereExpression  = QueryBuilderObject.WhereExpression;
            }

            QueryString = "SELECT " + (PageCount > 0 ? "TOP " + PageCount.ToString() + " " : "") +
                          "NULLIF(LTRIM(RTRIM(SL.[Fsrl_Id_Num])), '') AS [SERIAL_NO], " +
                          "NULLIF(LTRIM(RTRIM(SL.[Fsrl_Ret_Id])), '') AS [SERIAL_NO_RETURNED], " +
                          "NULLIF(LTRIM(RTRIM(SL.[Fsrl_Part_Num])), '') AS [PART_NO], " +
                          "NULLIF(NULLIF(LTRIM(RTRIM(SL.[Fsrl_Ret_Part_Num])), ''), 'NONE') AS [PART_NO_RETURNED], " +
                          "NULLIF(LTRIM(RTRIM(SL.[Fsrl_Part_Desc])), '') AS [PART_DESC], " +
                          "NULLIF(NULLIF(LTRIM(RTRIM(SCP.[Part_Desc])), ''), 'PART USED NONE RETURNED') AS [PART_DESC_RETURNED], " +
                          //"NULLIF(LTRIM(RTRIM(SCA.[Audit_Source_Site_Num])), '') AS [SOURCE_SITE_NO], " +
                          //"NULLIF(LTRIM(RTRIM(SCA.[Audit_Dest_Site_Num])), '') AS [DESTINATION_SITE_NO], " +
                          "NULLIF(LTRIM(RTRIM(SCP.[Part_Type])), '') AS [Part_Type], " +
                          "NULLIF(LTRIM(RTRIM(SCP.[Part_Alt_Part_Num])), '') AS [Part_Code], " +
                          "NULLIF(LTRIM(RTRIM(SL.[Fsrl_Call_Num])), '') AS [Call_Num], " +
                          "NULLIF(LTRIM(RTRIM(SC.[Call_Contact])), '') AS [Call_Contact], " +
                          //"NULLIF(LTRIM(RTRIM(SC.[Call_Num])), '') AS [Call_Num], " +
                          "NULLIF(LTRIM(RTRIM(SC.[Call_Ref])), '') AS [Call_Ref], " +
                          "CASE WHEN LEFT([Call_Phone], 2) LIKE '0%' THEN NULL ELSE LTRIM(RTRIM([Call_Phone])) END AS [Cost_Code], " +
                          "SL.[Fsrl_Last_Update] AS [UPDATE_DATE] " +
                          "FROM [SCFsrl] AS SL (NOLOCK) ";
            QueryStringJoin  = "FULL JOIN [SCPart] AS SCP ON SL.[Fsrl_Part_Num] = SCP.[Part_Num] ";
            QueryStringJoin += "FULL JOIN [SCCall] AS SC ON SL.[Fsrl_Call_Num] = SC.[Call_Num] ";
            QueryStringJoin += "FULL JOIN [SCCalt] AS SCT ON SC.[Call_Calt_Code] = SCT.[Calt_Code] ";
            QueryString      = QueryString + QueryStringJoin;

            //if (string.IsNullOrEmpty(WhereExpression))
            if (StartDate > DateTime.MinValue)
            {
                if (TimeRange > 0)
                {
                    _whereExpression = "WHERE [Fsrl_Last_Update]  >= CONVERT(DATETIME, '" + StartDate + "', 103) AND [Fsrl_Last_Update] <= CONVERT(DATETIME, '" + StartDate.AddHours(TimeRange) + "', 103) ";
                }
                else if (DateRange > 0)
                {
                    _whereExpression = "WHERE [Fsrl_Last_Update] >= CONVERT(DATETIME, '" + StartDate + "', 103) AND [Fsrl_Last_Update] <= CONVERT(DATETIME, '" + StartDate.AddDays(DateRange) + "', 103) ";
                }
                else if (EndDate > DateTime.MinValue && EndDate > DateTime.MinValue.AddDays(1))
                {
                    _whereExpression = "WHERE [Fsrl_Last_Update] >= CONVERT(DATETIME, '" + StartDate + "', 103) AND [Fsrl_Last_Update] <= CONVERT(DATETIME, '" + EndDate + "', 103) ";
                }
                else
                {
                    _whereExpression = "WHERE [Fsrl_Last_Update] >= CONVERT(DATETIME, '" + StartDate + "', 103) AND [Fsrl_Last_Update] <= CONVERT(DATETIME, '" + StartDate.AddDays(1) + "', 103) ";
                }
            }
            else
            {
                _whereExpression = "";
            }
            WhereExpression = !string.IsNullOrEmpty(WhereExpression) ? WhereExpression + "AND [Part_Type] != 'D' " : "WHERE [Part_Type] != 'D'";
            WhereExpression = string.IsNullOrEmpty(WhereExpression) ? _whereExpression :
                              string.IsNullOrEmpty(_whereExpression) ? WhereExpression : _whereExpression + WhereExpression.Replace("WHERE", "AND");

            OrderBy = !string.IsNullOrEmpty(OrderBy) ? OrderBy : _orderBy;

            LastQueryString = returnQueryString = QueryString + WhereExpression + OrderBy;
            if (QueryBuilderObject != null)
            {
                QueryBuilderObject.LastQueryString = LastQueryString;
            }
            // Need to reset the Where and Order by, otherwise they remain in memory for next request
            Reset();

            return(returnQueryString);
        }
Exemplo n.º 27
0
 /// <summary>
 /// 呈显页码
 /// </summary>
 /// <param name="index">第几页</param>
 /// <param name="text">显示字符</param>
 protected void RendPage(HtmlTextWriter output, int index, string text)
 {
     //如果不为当前页才能选择
     if (index != PageIndex)
     {
         output.AddAttribute(HtmlTextWriterAttribute.Onclick,
                             Page.ClientScript.GetPostBackEventReference(this, "__sp_TurnPage_" + index.ToString() + "_" + PageCount.ToString()));
     }
     output.AddAttribute(HtmlTextWriterAttribute.Href, "javascript:;");
     output.RenderBeginTag(HtmlTextWriterTag.A);
     output.Write(text);
     output.RenderEndTag();
 }
Exemplo n.º 28
0
        public async Task <IHttpActionResult> Get([FromUri] q_Product q)
        {
            #region working

            using (db0 = getDB0())
            {
                var items = db0.Product
                            .OrderByDescending(x => x.sort)
                            .Select(x => new m_Product()
                {
                    product_id = x.product_id,
                    l1_id      = x.l1_id,
                    l2_id      = x.l2_id,
                    l3_id      = x.l3_id,
                    l1_name    = x.Product_Category_L1.l1_name,
                    l2_name    = x.Product_Category_L2.l2_name,
                    l3_name    = x.Product_Category_L3.l3_name,
                    power      = x.power,
                    sort       = x.sort,
                    i_Hide     = x.i_Hide,
                    i_Lang     = x.i_Lang
                });
                if (q.keyword != null)
                {
                    items = items.Where(x => x.power.Contains(q.keyword) || x.l1_name.Contains(q.keyword) ||
                                        x.l2_name.Contains(q.keyword) || x.l3_name.Contains(q.keyword));
                }
                if (q.i_Lang != null)
                {
                    items = items.Where(x => x.i_Lang == q.i_Lang);
                }
                if (q.category_l1 != null)
                {
                    items = items.Where(x => x.l1_id == q.category_l1);
                }
                if (q.category_l2 != null)
                {
                    items = items.Where(x => x.l2_id == q.category_l2);
                }
                if (q.category_l3 != null)
                {
                    items = items.Where(x => x.l3_id == q.category_l3);
                }
                if (q.i_Hide != null)
                {
                    items = items.Where(x => x.i_Hide == q.i_Hide);
                }

                int page        = (q.page == null ? 1 : (int)q.page);
                int startRecord = PageCount.PageInfo(page, this.defPageSize, items.Count());
                var resultItems = await items.Skip(startRecord).Take(this.defPageSize).ToListAsync();

                return(Ok(new GridInfo <m_Product>()
                {
                    rows = resultItems,
                    total = PageCount.TotalPage,
                    page = PageCount.Page,
                    records = PageCount.RecordCount,
                    startcount = PageCount.StartCount,
                    endcount = PageCount.EndCount
                }));
            }
            #endregion
        }
Exemplo n.º 29
0
        public async Task <IHttpActionResult> Get([FromUri] queryParam q)
        {
            #region 連接BusinessLogicLibary資料庫並取得資料

            db0 = getDB0();
            var predicate = PredicateBuilder.True <Purchase>();

            if (q.keyword != null)
            {
                predicate = predicate.And(x => x.purchase_no.Contains(q.keyword) ||
                                          x.receive_name.Contains(q.keyword));
            }

            if (q.order_date != null)
            {
                DateTime start = (DateTime)q.order_date;
                DateTime end   = ((DateTime)q.order_date).AddDays(1);

                predicate = predicate.And(x => x.order_date >= start & x.order_date < end);
            }

            if (q.pay_date != null)
            {
                DateTime start = (DateTime)q.pay_date;
                DateTime end   = ((DateTime)q.pay_date).AddDays(1);

                predicate = predicate.And(x => x.remit_date >= start & x.remit_date < end);
            }

            if (q.type != null)
            {
                if (q.type == 1)
                {//pay_state
                    predicate = predicate.And(x => x.pay_state == q.type_val);
                }
                else if (q.type == 2)
                {//ship_state
                    predicate = predicate.And(x => x.ship_state == q.type_val);
                }
            }

            int page        = (q.page == null ? 1 : (int)q.page);
            var result      = db0.Purchase.AsExpandable().Where(predicate);
            var resultCount = await result.CountAsync();

            IQueryable <Purchase> resultOrderItems = null;

            if (q.field != null)
            {
                if (q.sort == "asc")
                {
                    resultOrderItems = result.OrderBy(q.field);
                }

                if (q.sort == "desc")
                {
                    resultOrderItems = result.OrderBy(q.field + " descending");
                }
            }
            else
            {
                resultOrderItems = result.OrderByDescending(x => x.order_date);
            }

            int startRecord = PageCount.PageInfo(page, defPageSize, resultCount);
            var resultItems = await
                              resultOrderItems
                              .Skip(startRecord)
                              .Take(defPageSize)
                              .Select(x => new
            {
                x.purchase_no,
                x.customer_id,
                x.order_date,
                x.remit_date,
                x.receive_name,
                x.pay_type,    //付款方式
                x.pay_state,   //付款狀態
                x.ship_state,  //出貨狀態
                Deatil = x.PurchaseDetail.ToList()
            })
                              .ToListAsync();

            db0.Dispose();

            return(Ok(new
            {
                rows = resultItems,
                total = PageCount.TotalPage,
                page = PageCount.Page,
                records = PageCount.RecordCount,
                startcount = PageCount.StartCount,
                endcount = PageCount.EndCount,
                field = q.field,
                sort = q.sort
            }));

            #endregion
        }
Exemplo n.º 30
0
        public void Update( int[] requests )
        {
            toload.Clear();

            // Find out what is already in memory
            // If it is, update it's position in the LRU collection
            // Otherwise add it to the list of pages to load
            int touched = 0;
            for( int i = 0; i < requests.Length; ++i )
            {
                if( requests[i] > 0 )
                {
                    PageCount pc = new PageCount
                    {
                        Page = indexer.GetPageFromIndex( i ),
                        Count = requests[i]
                    };

                    if( !cache.Touch( pc.Page ) )
                        toload.Add( pc );
                    else
                        ++touched;
                }
            }

            // Check to make sure we don't thrash
            if( touched < atlascount * atlascount )
            {
                // sort by low res to high res and number of requests
                toload.Sort();

                // if more pages than will fit in memory or more than update per frame drop high res pages with lowest use count
                int loadcount = System.Math.Min( System.Math.Min( toload.Count, uploadsperframe ), atlascount * atlascount );
                for( int i = 0; i < loadcount; ++i )
                    cache.Request( toload[i].Page );
            }
            else
            {
                // The problem here is that all pages in cache are requested and the new or high res ones don't get uploaded
                // We can adjust the mip bias to make it all fit. This solves the problem of page cache thrashing
                --MipBias;
            }

            // load any waiting requests & update the texture atlas
            loader.Update( uploadsperframe );

            // Update the page table
            pagetable.Update();
        }
Exemplo n.º 31
0
        protected override void Render(HtmlTextWriter writer)
        {
            string url = string.Empty;
            ClientScriptManager cs = Page.ClientScript;
            int begin, end;

            if (PageIndex < 6)
            {
                begin = 1;
            }
            else
            {
                if (PageIndex + 5 >= PageCount)
                {
                    if (PageCount < 10)
                    {
                        begin = 1;
                    }
                    else
                    {
                        begin = PageCount - 9;
                    }
                }
                else
                {
                    begin = PageIndex - 4;
                }
            }
            if (PageCount < 10)
            {
                end = PageCount;
            }
            else
            {
                end = begin + rightCount;
            }
            string beginRecord = (PageSize * PageIndex - PageSize + 1).ToString();
            string endRecord   = (PageSize * PageIndex).ToString();

            if (PageIndex == PageCount)
            {
                endRecord = RecordCount.ToString();
            }
            if (IsSpecial)
            {
                writer.Write("<div class=\"page\"><div class=\"row\"><ul class=\"page\">");
                if (IsPostModel)
                {
                    if (PageIndex > 1)
                    {
                        writer.Write("<li><a href=\"javascript:" + cs.GetPostBackEventReference(this, Convert.ToString(PageIndex - 1)) + "\"><</a></li>");
                    }
                    else
                    {
                        writer.Write("<li><a><</a></li>");
                    }
                    for (int i = begin; i < end + 1; i++)
                    {
                        if (i != PageIndex)
                        {
                            writer.Write("<li><a href=\"javascript:" + cs.GetPostBackEventReference(this, i.ToString()) + "\" >" + i + "</a></li>");
                        }
                        else
                        {
                            writer.Write("<li class=\"select\"><a href=\"javascript:" + cs.GetPostBackEventReference(this, i.ToString()) + "\" >" + i + "</a></li>");
                        }
                    }
                    if (PageIndex < PageCount)
                    {
                        writer.Write("<li><a href=\"javascript:" + cs.GetPostBackEventReference(this, Convert.ToString(PageIndex + 1)) + "\">></a></li>");
                    }
                    else
                    {
                        writer.Write("<li><a>></a></li>");
                    }
                }

                writer.Write("</ul></div></div>");
            }
            else
            {
                if (IsEnglish)
                {
                    writer.Write("<div style=\"width:100%;height:25px; line-height:25px;\"><div style=\"float:left; padding-left:10px;\">");
                    writer.Write(string.Format("<span style=\"font-weight:normal \">Total</span><span style=\"color:" + m_NumberColor.Name + "\">{0}</span><span style=\"font-weight:normal \">Records,</span>&nbsp;" +
                                               "<span style=\"font-weight:normal \">Current Page</span><span style=\"color:" + m_NumberColor.Name + "\">{1}</span><span style=\"font-weight:normal \">,Total Page<span style=\"color:" + m_NumberColor.Name + ";\">{2}</span><span style=\"font-weight:normal \"></span>&nbsp;&nbsp;", RecordCount, PageIndex, PageCount));
                    writer.Write("</div><div style=\"float:right; padding-right:5px; white-space:nowrap;\">");
                }
                else
                {
                    writer.Write("<div style=\"width:100%;height:25px; line-height:25px;\"><div style=\"float:left; padding-left:10px;\">");
                    writer.Write(string.Format("<span style=\"font-weight:normal \">共有</span><span style=\"color:" + m_NumberColor.Name + "\">{0}</span><span style=\"font-weight:normal \">条记录,</span>&nbsp;" +
                                               "<span style=\"font-weight:normal \">当前第</span><span style=\"color:" + m_NumberColor.Name + "\">{1}</span><span style=\"font-weight:normal \">页,共<span style=\"color:" + m_NumberColor.Name + ";\">{2}</span><span style=\"font-weight:normal \">页</span>&nbsp;&nbsp;", RecordCount, PageIndex, PageCount));
                    writer.Write("</div><div style=\"float:right; padding-right:5px; white-space:nowrap;\">");
                }
                if (IsEnglish)
                {
                    if (IsPostModel)
                    {
                        writer.Write("<a href=\"javascript:" + cs.GetPostBackEventReference(this, "1") + "\" class=\"pager\">Home</a>&nbsp;");

                        if (PageIndex > 1)
                        {
                            writer.Write("<a href=\"javascript:" + cs.GetPostBackEventReference(this, Convert.ToString(PageIndex - 1)) + "\" class=\"pager\">Last Page</a>&nbsp;");
                        }
                        else
                        {
                            writer.Write("Last Page&nbsp;");
                        }
                        for (int i = begin; i < end + 1; i++)
                        {
                            if (i != PageIndex)
                            {
                                writer.Write("<a href=\"javascript:" + cs.GetPostBackEventReference(this, i.ToString()) + "\" class=\"pager\">" + i + "</a>&nbsp;");
                            }
                            else
                            {
                                writer.Write(string.Format("<span style=\"color:" + m_NumberColor.Name + "\">{0}</span>&nbsp;", i));
                            }
                        }
                        if (PageIndex < PageCount)
                        {
                            writer.Write("&nbsp;<a href=\"javascript:" + cs.GetPostBackEventReference(this, Convert.ToString(PageIndex + 1)) + "\" class=\"pager\">Next Page</a>&nbsp;");
                        }
                        else
                        {
                            writer.Write("Next Page&nbsp;");
                        }
                        writer.Write("<a href=\"javascript:" + cs.GetPostBackEventReference(this, PageCount.ToString()) + "\" class=\"pager\">End</a>&nbsp;");
                    }
                    else
                    {
                        if (string.IsNullOrEmpty(TemplateUrl))
                        {
                            url = HttpContext.Current.Request.Url.PathAndQuery;
                            Regex reg = new Regex(@"(\?|&){0,1}Page=[^&]*", RegexOptions.IgnoreCase);
                            url = reg.Replace(url, string.Empty);
                            if (url.IndexOf("?") >= 0)
                            {
                                url += "&Page={0}";
                            }
                            else
                            {
                                url += "?Page={0}";
                            }
                        }
                        else
                        {
                            url = TemplateUrl;
                        }
                        writer.Write(string.Format("<a href=" + url + " class=\"pager\">Home</a>&nbsp;", 1));
                        if (PageIndex > 1)
                        {
                            writer.Write(string.Format("<a href=" + url + " class=\"pager\">Last Pgae</a>&nbsp;", PageIndex - 1));
                        }
                        else
                        {
                            writer.Write("Last Pgae&nbsp;");
                        }
                        for (int i = begin; i < end + 1; i++)
                        {
                            if (i != PageIndex)
                            {
                                writer.Write(string.Format("<a href=" + url + " class=\"pager\">{0}</a>&nbsp;", i));
                            }
                            else
                            {
                                writer.Write(string.Format("<span style=\"color:" + m_NumberColor.Name + "\">{0}</span>&nbsp;", i));
                            }
                        }
                        if (PageIndex < PageCount)
                        {
                            writer.Write(string.Format("<a href=" + url + " class=\"pager\">Next Page</a>&nbsp;", PageIndex + 1));
                        }
                        else
                        {
                            writer.Write("Next Page&nbsp");
                        }
                        writer.Write(string.Format("&nbsp;<a href=" + url + " class=\"pager\">End</a>", PageCount));
                    }
                }
                else
                {
                    if (IsPostModel)
                    {
                        writer.Write("<a href=\"javascript:" + cs.GetPostBackEventReference(this, "1") + "\" class=\"pager\">首页</a>&nbsp;");

                        if (PageIndex > 1)
                        {
                            writer.Write("<a href=\"javascript:" + cs.GetPostBackEventReference(this, Convert.ToString(PageIndex - 1)) + "\" class=\"pager\">上一页</a>&nbsp;");
                        }
                        else
                        {
                            writer.Write("上一页&nbsp;");
                        }
                        for (int i = begin; i < end + 1; i++)
                        {
                            if (i != PageIndex)
                            {
                                writer.Write("<a href=\"javascript:" + cs.GetPostBackEventReference(this, i.ToString()) + "\" class=\"pager\">" + i + "</a>&nbsp;");
                            }
                            else
                            {
                                writer.Write(string.Format("<span style=\"color:" + m_NumberColor.Name + "\">{0}</span>&nbsp;", i));
                            }
                        }
                        if (PageIndex < PageCount)
                        {
                            writer.Write("&nbsp;<a href=\"javascript:" + cs.GetPostBackEventReference(this, Convert.ToString(PageIndex + 1)) + "\" class=\"pager\">下一页</a>&nbsp;");
                        }
                        else
                        {
                            writer.Write("下一页&nbsp;");
                        }
                        writer.Write("<a href=\"javascript:" + cs.GetPostBackEventReference(this, PageCount.ToString()) + "\" class=\"pager\">尾页</a>&nbsp;");
                    }
                    else
                    {
                        if (string.IsNullOrEmpty(TemplateUrl))
                        {
                            url = HttpContext.Current.Request.Url.PathAndQuery;
                            Regex reg = new Regex(@"(\?|&){0,1}Page=[^&]*", RegexOptions.IgnoreCase);
                            url = reg.Replace(url, string.Empty);
                            if (url.IndexOf("?") >= 0)
                            {
                                url += "&Page={0}";
                            }
                            else
                            {
                                url += "?Page={0}";
                            }
                        }
                        else
                        {
                            url = TemplateUrl;
                        }
                        writer.Write(string.Format("<a href=" + url + " class=\"pager\">首页</a>&nbsp;", 1));
                        if (PageIndex > 1)
                        {
                            writer.Write(string.Format("<a href=" + url + " class=\"pager\">上一页</a>&nbsp;", PageIndex - 1));
                        }
                        else
                        {
                            writer.Write("上一页&nbsp;");
                        }
                        for (int i = begin; i < end + 1; i++)
                        {
                            if (i != PageIndex)
                            {
                                writer.Write(string.Format("<a href=" + url + " class=\"pager\">{0}</a>&nbsp;", i));
                            }
                            else
                            {
                                writer.Write(string.Format("<span style=\"color:" + m_NumberColor.Name + "\">{0}</span>&nbsp;", i));
                            }
                        }
                        if (PageIndex < PageCount)
                        {
                            writer.Write(string.Format("<a href=" + url + " class=\"pager\">下一页</a>&nbsp;", PageIndex + 1));
                        }
                        else
                        {
                            writer.Write("下一页&nbsp");
                        }
                        writer.Write(string.Format("&nbsp;<a href=" + url + " class=\"pager\">尾页</a>", PageCount));
                    }
                }


                writer.Write("</div></div>");
            }
        }