using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using BLL; using Newtonsoft.Json.Linq; namespace FineUIPro.Web.JDGL.WBS { public partial class CostControlWeekDetailEdit : PageBase { /// /// 控制项主键 /// public string Id { get { return (string)ViewState["Id"]; } set { ViewState["Id"] = value; } } protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { this.Id = Request.Params["Id"]; Model.WBS_CostControl costControl = BLL.CostControlService.GetCostControlByCostControlId(this.Id); if (costControl != null) { this.txtCostControlName.Text = costControl.CostControlName; } var list = BLL.CostControlDetailService.GetMonthCostControlDetailsByCostControlId(this.Id); this.Grid1.DataSource = list; this.Grid1.DataBind(); } } #region 增加按钮事件 /// /// 增加按钮事件 /// /// /// protected void btnNew_Click(object sender, EventArgs e) { var list = GetDetails(); Model.WBS_CostControlDetail detail = new Model.WBS_CostControlDetail(); detail.CostControlDetailId = SQLHelper.GetNewID(); list.Add(detail); Grid1.DataSource = list; Grid1.DataBind(); } #endregion private List GetDetails() { List details = new List(); foreach (JObject mergedRow in Grid1.GetMergedData()) { JObject values = mergedRow.Value("values"); int i = mergedRow.Value("index"); Model.WBS_CostControlDetail detail = new Model.WBS_CostControlDetail(); detail.CostControlDetailId = Grid1.Rows[i].RowID; detail.CostControlId = this.Id; detail.Months = Funs.GetNewDateTime(values.Value("Months") + "-01"); detail.PlanNum = Funs.GetNewDecimal(values.Value("PlanNum")); details.Add(detail); } return details; } #region 行点击事件 /// /// Grid行点击事件 /// /// /// protected void Grid1_RowCommand(object sender, GridCommandEventArgs e) { string detailId = Grid1.DataKeys[e.RowIndex][0].ToString(); var list = GetDetails(); if (e.CommandName == "SetWeek")//设置周计划 { PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("CostControlWeekItemDetailEdit.aspx?Id={0}", detailId, "修改 - "))); } } #endregion } }