protected void gvRequestParts_RowDeleting(object sender, GridViewDeleteEventArgs e) { RefreshSelectedDetails(SelectedReqDetails, gvRequestParts); RefreshRequestedDetails(); int partID = int.Parse(gvRequestParts.DataKeys[e.RowIndex].Value.ToString()); View_StocktakeDetails details = GetDetailsByRow(gvRequestParts.Rows[e.RowIndex]); details.PartID = partID; if (RequestID != null) { RemovedDetails.Add(details); } //if (RequestID != null) //{ int index = RequestedDetails.FindIndex(d => d.PartID == details.PartID); if (index >= 0) { RequestedDetails.RemoveAt(index); } index = -1; index = SelectedReqDetails.FindIndex(d => d.PartID == details.PartID); if (index >= 0) { SelectedReqDetails.RemoveAt(index); } //} BindData(); //RefreshDetails(); //Guid partID = (Guid)gvRequestParts.DataKeys[e.RowIndex].Value; //Details.RemoveAll(d => d.PartID == partID); //if (RequestID != null) //{ // NewStocktakeRequest request = new NewStocktakeRequest // { // Details = new List<NewStocktakeDetails> // { // new NewStocktakeDetails { PartID = partID.ToString()} // } // }; // Service.UpdateCachedRequest(request, CacheKey, false, true); //} //BindRequestDetails(); //BindDataControl(gvRequestParts, Details); }
protected void valiDetails_ServerValidate(object source, ServerValidateEventArgs args) { RefreshRequestedDetails(); int index = RequestedDetails.FindIndex(d => d.StocktakeType == null || d.Priority == null); if (index >= 0) { args.IsValid = false; index++; int pageIndex = (index - 1) / pagerRequestParts.PageSize + 1; pagerRequestParts.CurrentPage = pageIndex; BindRequestDetails(); } else { args.IsValid = true; } }
protected void linkRemove_Click(object sender, EventArgs e) { RefreshSelectedDetails(SelectedReqDetails, gvRequestParts); RefreshRequestedDetails(); for (int i = SelectedReqDetails.Count - 1; i >= 0; i--) { View_StocktakeDetails detail = SelectedReqDetails[i]; if (RequestID != null)//update { RemovedDetails.Add(detail); } int index = RequestedDetails.FindIndex(d => d.PartID == detail.PartID); if (index >= 0) { RequestedDetails.RemoveAt(index); } SelectedReqDetails.RemoveAt(i); } BindData(); }
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); } } } }