Exemplo n.º 1
0
    private void BindRequestDetails()
    {
        int pageCount;
        int itemCount;
        List <View_StocktakeDetails> details;

        if (RequestID == null)//create
        {
            itemCount = RequestedDetails.Count();
            pagerRequestParts.TotalRecord = itemCount;
            int pageSize   = pagerRequestParts.PageSize;
            int pageNumber = pagerRequestParts.CurrentPage;
            var qry        = RequestedDetails.AsQueryable().OrderBy(d => d.PartCode);
            details = SGM.Common.Utility.Utils.GetQueryByPage(qry, pageSize, pageNumber, out pageCount, out itemCount).ToList();
        }
        else
        {
            View_StocktakeDetails condition = new View_StocktakeDetails
            {
                RequestID = RequestID.Value
            };
            string cacheKey = string.Empty;
            details = Service.QueryRequestDetailsByPage(condition, RemovedDetails, RequestedDetails, null, null, pagerRequestParts.PageSize, pagerRequestParts.CurrentPage, out pageCount, out itemCount); //Service.GetNotiDetailsByPage(new StocktakeNotification { NotificationID = NotificationID.Value }, RemovedDetails, IncludedDetails, pagerDetails.PageSize, pagerDetails.CurrentPage, out pageCount, out itemCount);
        }
        BindDataControl(gvRequestParts, details);
        pagerRequestParts.TotalRecord = itemCount;
    }
Exemplo n.º 2
0
 private void RefreshRequestedDetails()
 {
     foreach (GridViewRow row in gvRequestParts.Rows)
     {
         if (gvRequestParts.DataKeys[row.RowIndex]["PartID"] == null)
         {
             continue;
         }
         int partID = int.Parse(gvRequestParts.DataKeys[row.RowIndex]["PartID"].ToString());
         if (partID == DefaultValue.INT)
         {
             continue;
         }
         View_StocktakeDetails detail = GetDetailsByRow(row);
         detail.PartID = partID;
         int index = RequestedDetails.FindIndex(d => d.PartID == detail.PartID);
         if (index >= 0)
         {
             RequestedDetails[index].DetailsDesc   = detail.DetailsDesc;
             RequestedDetails[index].StocktakeType = detail.StocktakeType;
             RequestedDetails[index].Priority      = detail.Priority;
         }
         else
         {
             if (RequestID == null)
             {
                 if (!string.IsNullOrEmpty(detail.DetailsDesc))
                 {
                     RequestedDetails.Add(detail);
                 }
             }
             else
             {
                 RequestedDetails.Add(detail);
             }
         }
     }
 }
Exemplo n.º 3
0
 protected void btnAddPart_Click(object sender, EventArgs e)
 {
     RefreshSelectedDetails(SelectedDetails, gvParts);
     RefreshRequestedDetails();
     valiCounts.Validate();
     if (!valiCounts.IsValid)
     {
         return;
     }
     for (int i = SelectedDetails.Count - 1; i >= 0; i--)
     {
         View_StocktakeDetails detail       = SelectedDetails[i];
         List <Part>           relatedParts = Service.GetRelatedParts(detail.PartID.ToString());
         foreach (var item in relatedParts)
         {
             View_StocktakeDetails tmpDetail = new View_StocktakeDetails();
             tmpDetail.CreateViewByPart(item);
             tmpDetail.StocktakeType = detail.StocktakeType; //stocktakeTypeID;
             tmpDetail.Priority      = detail.Priority;      // stocktakePriorityID;
             if (!RequestedDetails.Exists(d => d.PartID == tmpDetail.PartID))
             {
                 RequestedDetails.Add(tmpDetail);
             }
             if (RequestID != null)
             {
                 int index = RemovedDetails.FindIndex(d => d.PartID == tmpDetail.PartID);
                 if (index >= 0)
                 {
                     RemovedDetails.RemoveAt(index);
                 }
             }
         }
         SelectedDetails.RemoveAt(i);
     }
     BindData();
 }