using BLL; using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; namespace FineUIPro.Web.DataShow { public partial class LargeEngineering : PageBase { #region 加载页面 /// /// 加载页面 /// /// /// protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { Funs.DropDownPageSize(this.ddlPageSize); ddlPageSize.SelectedValue = Grid1.PageSize.ToString(); BLL.ProjectService.InitCNCECShowProjectDropDownList(this.drpProject, true); LargerHazard = (from x in Funs.DB.Solution_LargerHazard join y in Funs.DB.Base_Project on x.ProjectId equals y.ProjectId where y.ProjectState == Const.ProjectState_1 select x).ToList(); // 绑定表格t BindGrid(); } } public static List LargerHazard = new List(); /// /// 绑定数据 /// private void BindGrid() { string strSql = @"select ProjectId,ProjectCode, ProjectName from Base_Project where IsCNCECShow=1"; List listStr = new List(); string cpara = string.Empty; if (this.drpProject.SelectedValue != Const._Null) { strSql += " AND projectId = @projectId"; ///状态为已完成 listStr.Add(new SqlParameter("@projectId", this.drpProject.SelectedValue)); } SqlParameter[] parameter = listStr.ToArray(); DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); Grid1.RecordCount = tb.Rows.Count; var table = this.GetPagedDataTable(Grid1, tb); Grid1.DataSource = table; Grid1.DataBind(); this.OutputSummaryData(); ///取合计值 } public static int allCount1 = 0, allCount2 = 0, allCount3 = 0, allCount4 = 0, allCount5 = 0, allCount6 = 0; /// /// 计算合计 /// private void OutputSummaryData() { JObject summary = new JObject { { "ProjectName", "合计" }, { "Count1", allCount1.ToString() }, { "Count2", allCount2.ToString() }, { "Count3", allCount3.ToString() }, { "Count4", allCount4.ToString() }, { "Count5", allCount5.ToString() }, { "Count6", allCount6.ToString() } }; Grid1.SummaryData = summary; } #endregion #region 查询 /// /// 查询 /// /// /// protected void TextBox_TextChanged(object sender, EventArgs e) { this.BindGrid(); } #endregion #region 表排序、分页、关闭窗口 /// /// 分页 /// /// /// protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) { BindGrid(); } /// /// 排序 /// /// /// protected void Grid1_Sort(object sender, GridSortEventArgs e) { BindGrid(); } /// /// 分页显示条数下拉框 /// /// /// protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) { Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue); BindGrid(); } /// /// 关闭弹出窗 /// /// /// protected void Window1_Close(object sender, WindowCloseEventArgs e) { BindGrid(); } #endregion #region Grid双击事件 编辑 /// /// Grid行双击事件 /// /// /// protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e) { EditData(); } /// /// /// private void EditData() { if (Grid1.SelectedRowIndexArray.Length == 0) { Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning); return; } PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("LargeEngineeringItem.aspx?projectId={0}", Grid1.SelectedRowID, "查看 - "))); } #endregion /// /// /// /// /// protected void btnView_Click(object sender, EventArgs e) { EditData(); } /// /// 获取危大工程数 /// /// /// protected int Count1(object projectId) { int cout1 = 0; allCount1= LargerHazard.Where(x => x.IsSuperLargerHazard == false || !x.IsSuperLargerHazard.HasValue ).Count(); if (projectId != null) { cout1 = LargerHazard.Where(x => x.ProjectId == projectId.ToString() && (x.IsSuperLargerHazard == false || !x.IsSuperLargerHazard.HasValue)).Count(); } return cout1; } /// /// 获取超危大工程数 /// /// /// protected int Count2(object projectId) { int cout1 = 0; allCount2 = LargerHazard.Where(x => x.IsSuperLargerHazard == true).Count(); if (projectId != null) { cout1 = LargerHazard.Where(x => x.ProjectId == projectId.ToString() && x.IsSuperLargerHazard == true).Count(); } return cout1; } /// /// 在施危大工程数量 /// /// /// protected int Count3(object projectId) { int cout1 = 0; allCount3 = LargerHazard.Where(x => x.States == Const.State_2).Count(); if (projectId != null) { cout1 = LargerHazard.Where(x => x.ProjectId == projectId.ToString() && x.States == Const.State_2).Count(); } return cout1; } /// /// 审批完成数量 /// /// /// protected int Count4(object projectId) { int cout1 = 0; allCount4 = LargerHazard.Where(x => x.States == Const.State_1).Count(); if (projectId != null) { cout1 = LargerHazard.Where(x => x.ProjectId == projectId.ToString() && x.States == Const.State_1).Count(); } return cout1; } /// /// 培训人次数 /// /// /// protected int Count5(object projectId) { int cout1 = 0; allCount5 = LargerHazard.Sum(x => x.TrainPersonNum ?? 0); if (projectId != null) { cout1 = LargerHazard.Where(x => x.ProjectId == projectId.ToString()).Sum(x=>x.TrainPersonNum ?? 0); } return cout1; } /// /// 完工个数 /// /// /// protected int Count6(object projectId) { int cout1 = 0; allCount6 = LargerHazard.Where(x => x.States == Const.State_3).Count(); if (projectId != null) { cout1 = LargerHazard.Where(x => x.ProjectId == projectId.ToString() && x.States == Const.State_3).Count(); } return cout1; } } }