protected List <BudConsTask> ConvertGridToList() { List <BudConsTask> list = new List <BudConsTask>(); foreach (GridViewRow gridViewRow in this.gvTask.Rows) { bool flag = false; BudConsTask budConsTask = new BudConsTask(); string value = ((HiddenField)gridViewRow.FindControl("hfldTaskId")).Value; if (!string.IsNullOrEmpty(value)) { budConsTask.TaskId = value; decimal d = Convert.ToDecimal(((TextBox)gridViewRow.FindControl("txtCompleteQuantity")).Text); decimal num = Convert.ToDecimal(((HiddenField)gridViewRow.FindControl("hfldCompleteQuantity")).Value); budConsTask.CompleteQuantity = 0m; if (!d.Equals(num)) { budConsTask.CompleteQuantity = d - num; budConsTask.AccountingQuantity = new decimal?(budConsTask.CompleteQuantity); flag = true; } if (flag) { list.Add(budConsTask); } } } return(list); }
public void SaveBudConstractConsRpt() { List <BudConsTask> list = this.ConvertGridToList(); string rptId = Guid.NewGuid().ToString(); if (list.Count > 0) { BudConsReport budConsReport = ( from r in this.budConReportSev where r.BalanceId == this.hdGuid.Value.ToString() && r.Type == "1" && r.ConstractId == this.hfldContractId.Value.ToString() select r).FirstOrDefault <BudConsReport>(); if (budConsReport != null) { rptId = budConsReport.ConsReportId; using (List <BudConsTask> .Enumerator enumerator = list.GetEnumerator()) { BudConsTask budConsTask; while (enumerator.MoveNext()) { budConsTask = enumerator.Current; BudConsTask budConsTask3 = ( from r in this.budConsTaskSev where r.ConsReportId == rptId && r.TaskId == budConsTask.TaskId select r).FirstOrDefault <BudConsTask>(); if (budConsTask3 != null) { budConsTask3.CompleteQuantity += budConsTask.CompleteQuantity; budConsTask3.AccountingQuantity = new decimal?(budConsTask3.CompleteQuantity); this.budConsTaskSev.Update(budConsTask3); } else { budConsTask3 = new BudConsTask(); budConsTask3.ConsTaskId = Guid.NewGuid().ToString(); budConsTask3.ConsReportId = rptId; budConsTask3.TaskId = budConsTask.TaskId; budConsTask3.CompleteQuantity = budConsTask.CompleteQuantity; budConsTask3.Note = ""; budConsTask3.AccountingQuantity = budConsTask.AccountingQuantity; this.budConsTaskSev.Add(budConsTask3); } } return; } } BudConsReport budConsReport2 = new BudConsReport(); budConsReport2.ConsReportId = rptId; budConsReport2.InputDate = DateTime.Now; budConsReport2.InputUser = PageHelper.QueryUser(this, base.UserCode); budConsReport2.IsValid = new bool?(true); budConsReport2.PrjId = this.hfldPrjid.Value; budConsReport2.FlowState = 1; budConsReport2.IsValid = new bool?(true); budConsReport2.State = "0"; budConsReport2.ConstractId = this.hfldContractId.Value; budConsReport2.BalanceId = this.hdGuid.Value; budConsReport2.WorkCard = string.Empty; budConsReport2.Type = "1"; this.budConReportSev.Add(budConsReport2); foreach (BudConsTask current in list) { BudConsTask budConsTask2 = new BudConsTask(); budConsTask2.ConsTaskId = Guid.NewGuid().ToString(); budConsTask2.ConsReportId = rptId; budConsTask2.TaskId = current.TaskId; budConsTask2.CompleteQuantity = current.CompleteQuantity; budConsTask2.Note = ""; budConsTask2.AccountingQuantity = current.AccountingQuantity; this.budConsTaskSev.Add(budConsTask2); } } }