using BLL; using FineUIPro.Web.BaseInfo; using FineUIPro.Web.DataShow; using NPOI.SS.Formula.Functions; 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; namespace FineUIPro.Web.SubPackManage { public partial class SubPackTeamList : PageBase { /// /// 项目id /// public string ProjectId { get { return (string)ViewState["ProjectId"]; } set { ViewState["ProjectId"] = value; } } public int TotalNum { get { return (int)ViewState["TotalNum"]; } set { ViewState["TotalNum"] = value; } } protected void Page_Load(object sender, EventArgs e) { // 表头过滤 //FilterDataRowItem = FilterDataRowItemImplement; if (!IsPostBack) { Funs.DropDownPageSize(this.ddlPageSize); this.ProjectId = this.CurrUser.LoginProjectId; GetButtonPower(); BLL.SubPackTeamListService.DropSelectUnitWork(drpUnitWork, this.ProjectId, true); btnNew.OnClientClick = Window1.GetShowReference("SubPackTeamListEdit.aspx") + "return false;"; // 绑定表格 BindGrid(); } } /// /// 过滤表头 /// /// /// protected void Grid1_FilterChange(object sender, EventArgs e) { BindGrid(); } /// /// 分页 /// /// /// protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) { Grid1.PageIndex = e.NewPageIndex; BindGrid(); } /// /// 排序 /// /// /// protected void Grid1_Sort(object sender, GridSortEventArgs e) { BindGrid(); } /// /// 绑定数据 /// public void BindGrid() { DataTable tb = SubPackTeamlistData(); Grid1.RecordCount = tb.Rows.Count; tb = GetFilteredTable(Grid1.FilteredData, tb); var table = this.GetPagedDataTable(Grid1, tb); Grid1.DataSource = table; Grid1.DataBind(); } /// /// Grid行双击事件 /// /// /// protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e) { btnMenuModify_Click(null, null); } #region 编辑 /// /// 编辑按钮 /// /// /// protected void btnMenuModify_Click(object sender, EventArgs e) { if (Grid1.SelectedRowIndexArray.Length == 0) { Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning); return; } string id = Grid1.SelectedRowID.Split(',')[0]; var item = Funs.DB.SubPack_TeamList.FirstOrDefault(p => p.SubPackTeamListID == id); if (item == null) { Alert.ShowInTop("你要修改的数据在数据库已经不存在了,请重新查询试试!", MessageBoxIcon.Warning); return; } if (item.State == Const.SubPackTeamList_AuditCompleted) { PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SubPackTeamListView.aspx?SubPackTeamListID={0}", id, "查看 - "))); return; } PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SubPackTeamListEdit.aspx?SubPackTeamListID={0}", id, "编辑 - "))); return; } /// /// 分页显示条数下拉框 /// /// /// protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) { Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue); BindGrid(); } #endregion #region 删除 /// /// 批量删除 /// /// /// protected void btnMenuDel_Click(object sender, EventArgs e) { if (Grid1.SelectedRowIndexArray.Length == 0) { Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning); return; } string id = Grid1.SelectedRowID.Split(',')[0]; var item = Funs.DB.SubPack_TeamList.FirstOrDefault(p => p.SubPackTeamListID == id); if (!string.IsNullOrWhiteSpace(item.State) && item.State != Const.SubPackTeamList_Write) { Alert.ShowInTop("此条数据已提交审核,不能删除!", MessageBoxIcon.Warning); return; } BLL.SubPackTeamListService.DeleteSubPackTeamList(id); BLL.LogService.AddSys_Log(this.CurrUser, item.BidName, id, BLL.Const.SubPackTeamListMenuId, "删除劳务公司单记录"); Grid1.DataBind(); BindGrid(); Alert.ShowInTop("删除数据成功!", MessageBoxIcon.Success); } #endregion protected void btnMenuView_Click(object sender, EventArgs e) { if (Grid1.SelectedRowIndexArray.Length == 0) { Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning); return; } string id = Grid1.SelectedRowID.Split(',')[0]; var item = Funs.DB.SubPack_TeamList.FirstOrDefault(p => p.SubPackTeamListID == id); if (item == null) { Alert.ShowInTop("你要修改的数据在数据库已经不存在了,请重新查询试试!", MessageBoxIcon.Warning); return; } PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("SubPackTeamListView.aspx?SubPackTeamListID={0}", id, "查看 - "))); return; } /// /// 查询按钮事件 /// /// /// protected void btnQuery_Click(object sender, EventArgs e) { BindGrid(); } protected void btnRset_Click(object sender, EventArgs e) { drpUnitWork.SelectedIndex = 0; txtBidName.Text = ""; txtStartTime.Text = ""; txtEndTime.Text = ""; BindGrid(); } #region 获取按钮权限 /// /// 获取按钮权限 /// /// /// private void GetButtonPower() { if (Request.Params["value"] == "0") { return; } var buttonList = BLL.CommonService.GetAllButtonList(this.ProjectId, this.CurrUser.UserId, BLL.Const.SubPackTeamListMenuId); if (buttonList.Count() > 0) { if (buttonList.Contains(BLL.Const.BtnAdd)) { this.btnNew.Hidden = false; } if (buttonList.Contains(BLL.Const.BtnModify)) { this.btnMenuModify.Hidden = false; } if (buttonList.Contains(BLL.Const.BtnDelete)) { this.btnMenuDel.Hidden = false; } } } #endregion /// /// 数据查询 /// /// protected DataTable SubPackTeamlistData() { string strSql = @"select a.SubPackTeamListID,b.ProjectName, a.BidName,c.UnitName,SubPackTeamListDate,a.State " + @",(select top 1 Sys_User.UserName from Sys_User where Sys_User.UserId=a.SubPackTeamListMan) as SubPackTeamListManName " + @",(select top 1 Sys_User.UserName from Sys_User where Sys_User.UserId=a.SubmitMan) as SubmitManName " + @",(select top 1 Sys_User.UserName from Sys_User where Sys_User.UserId=a.SaveHandleMan) as SaveHandleManName " + @"FROM SubPack_TeamList a " + @" left join Base_Project b on a.ProjectId=b.ProjectId " + @" left join Base_Unit c on a.UnitWorkId=c.UnitId " + @" WHERE a.ProjectId=@ProjectId "; List listStr = new List(); listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId)); strSql += " AND (a.SubPackTeamListDate>=@startTime or @startTime='') and (a.SubPackTeamListDate<=@endTime or @endTime='') "; listStr.Add(new SqlParameter("@startTime", !string.IsNullOrEmpty(txtStartTime.Text.Trim()) ? txtStartTime.Text.Trim() + " 00:00:00" : "")); listStr.Add(new SqlParameter("@endTime", !string.IsNullOrEmpty(txtEndTime.Text.Trim()) ? txtEndTime.Text.Trim() + " 23:59:59" : "")); if (drpUnitWork.SelectedValue != BLL.Const._Null) { strSql += " AND a.UnitWorkId=@unitWorkId"; listStr.Add(new SqlParameter("@unitWorkId", drpUnitWork.SelectedValue)); } if (!string.IsNullOrWhiteSpace(txtBidName.Text.Trim())) { strSql += " AND a.BidName like '%'+ @bidName + '%' "; listStr.Add(new SqlParameter("@bidName", txtBidName.Text.Trim())); } SqlParameter[] parameter = listStr.ToArray(); DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); return tb; } /// /// 关闭弹出窗 /// /// /// protected void Window1_Close(object sender, WindowCloseEventArgs e) { BindGrid(); } /// /// 把状态转换代号为文字形式 /// /// /// protected string ConvertState(object state, object subPackTeamListID) { var approves = BLL.Funs.DB.SubPack_TeamListApprove.Where(p => p.SubPackTeamListID == subPackTeamListID.ToString()).ToList(); if (state != null) { if (state.ToString() == BLL.Const.SubPackTeamList_Write && approves.Count <= 0 ) { return "编制"; } else if (state.ToString() == BLL.Const.SubPackTeamList_Write && approves.Count > 0) { return "重新编制"; } else if (state.ToString() == BLL.Const.SubPackTeamList_Submit) { return "总包负责人审批"; } else if (state.ToString() == BLL.Const.SubPackTeamList_AuditCompleted) { return "审核完成"; } else { return ""; } } return ""; } } }