SGGL_SHJ/SGGL/FineUIPro.Web/CQMS/Meeting/MonthMeeting.aspx.cs

391 lines
13 KiB
C#

using BLL;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Threading.Tasks;
namespace FineUIPro.Web.CQMS.Meeting
{
public partial class MonthMeeting : PageBase
{
/// <summary>
/// 项目id
/// </summary>
public string ProjectId
{
get
{
return (string)ViewState["ProjectId"];
}
set
{
ViewState["ProjectId"] = value;
}
}
#region
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
// 表头过滤
//FilterDataRowItem = FilterDataRowItemImplement;
if (!IsPostBack)
{
this.ProjectId = this.CurrUser.LoginProjectId;
//权限按钮方法
GetButtonPower();
btnNew.OnClientClick = Window1.GetShowReference("MonthMeetingEdit.aspx") + "return false;";
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
// 绑定表格
BindGrid();
}
}
#endregion
protected DataTable insklistData()
{
string strSql = @"SELECT ins.*,un.UnitName,u.PersonName as CompileManName"
+ @" FROM Meeting_CQMSMeeting ins"
+ @" left join Base_Unit un on un.UnitId = ins.UnitId"
+ @" left join Person_Persons u on u.PersonId = ins.CompileMan"
+ @" where ins.ProjectId=@ProjectId and ins.MeetingType='M' ";
List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
return tb;
}
/// <summary>
/// 绑定数据
/// </summary>
public void BindGrid()
{
DataTable tb = insklistData();
// 2.获取当前分页数据
//var table = this.GetPagedDataTable(Grid1, tb1);
Grid1.RecordCount = tb.Rows.Count;
tb = GetFilteredTable(Grid1.FilteredData, tb);
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
}
#region
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void TextBox_TextChanged(object sender, EventArgs e)
{
this.BindGrid();
}
#endregion
#region
/// <summary>
/// 过滤表头
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_FilterChange(object sender, EventArgs e)
{
BindGrid();
}
/// <summary>
/// 分页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
Grid1.PageIndex = e.NewPageIndex;
BindGrid();
}
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_Sort(object sender, GridSortEventArgs e)
{
//Grid1.SortDirection = e.SortDirection;
//Grid1.SortField = e.SortField;
BindGrid();
}
/// <summary>
/// 分页显示条数下拉框
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
{
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
BindGrid();
}
/// <summary>
/// 关闭弹出窗
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Window1_Close(object sender, WindowCloseEventArgs e)
{
BindGrid();
string str = this.hdID.Text;
if (!string.IsNullOrEmpty(str))
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("MonthMeetingEdit.aspx?MeetingId={0}", str, "查看 - ")));
}
this.hdID.Text = string.Empty;
}
#endregion
#region Grid双击事件
/// <summary>
/// Grid行双击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
{
btnMenuModify_Click(null, null);
}
#endregion
#region
/// <summary>
/// 编辑按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuModify_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
return;
}
string id = Grid1.SelectedRowID;
var ins = BLL.CQMS_MeetingService.GetCQMSMeetingById(id);
if (ins != null)
{
if (ins.State.Equals(Const.CQMSMeeting_Complete))
{
Alert.ShowInTop("流程已闭环,无法编辑,请右键查看!", MessageBoxIcon.Warning);
return;
}
Model.Meeting_CQMSMeetingApprove approve = BLL.CQMS_MeetingApproveService.GetCQMSMeetingApproveByMeetingId(id);
if (approve != null)
{
if (!string.IsNullOrEmpty(approve.ApproveMan))
{
if (this.CurrUser.PersonId == approve.ApproveMan || CurrUser.PersonId == Const.sysglyId)
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("MonthMeetingEdit.aspx?MeetingId={0}", id, "编辑 - ")));
return;
}
else
{
Alert.ShowInTop("您不是当前办理人,无法编辑,请右键查看!", MessageBoxIcon.Warning);
return;
}
}
}
else
{
Alert.ShowInTop("您不是当前办理人,无法编辑,请右键查看!", MessageBoxIcon.Warning);
return;
}
}
else
{
Alert.ShowInTop("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
return;
}
}
#endregion
#region
/// <summary>
/// 批量删除
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuDel_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
return;
}
string id = Grid1.SelectedRowID;
var ins = BLL.CQMS_MeetingService.GetCQMSMeetingById(id);
////删除附件表
BLL.CommonService.DeleteAttachFileById(id);
BLL.CQMS_MeetingApproveService.DeleteCQMSMeetingApprovesByMeetingId(id);
BLL.CQMS_MeetingService.DeleteCQMSMeetingById(id);
BLL.LogService.AddSys_Log(this.CurrUser, ins.MeetingCode, id, BLL.Const.CQMSMonthMeetingMenuId, "删除质量月例会");
Grid1.DataBind();
BindGrid();
Alert.ShowInTop("删除数据成功!", MessageBoxIcon.Success);
}
#endregion
#region
/// <summary>
/// 获取按钮权限
/// </summary>
/// <param name="button"></param>
/// <returns></returns>
private void GetButtonPower()
{
if (Request.Params["value"] == "0")
{
return;
}
var buttonList = BLL.CommonService.GetAllButtonList(this.ProjectId, this.CurrUser.PersonId, BLL.Const.CQMSMonthMeetingMenuId);
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
//<summary>
//获取主持人
//</summary>
//<param name="state"></param>
//<returns></returns>
protected string ConvertHostMan(object HostMan)
{
string names = string.Empty;
if (HostMan != null)
{
string[] strs = HostMan.ToString().Split(',');
foreach (var item in strs)
{
names += BLL.Person_PersonsService.GetPersonsNameById(item) + ",";
}
if (!string.IsNullOrEmpty(names))
{
names = names.Substring(0, names.Length - 1);
}
}
return names;
}
/// <summary>
/// 把状态转换代号为文字形式
/// </summary>
/// <param name="state"></param>
/// <returns></returns>
protected string ConvertState(object state)
{
if (state != null)
{
if (state.ToString() == BLL.Const.CQMSMeeting_ReCompile)
{
return "重新编制";
}
else if (state.ToString() == BLL.Const.CQMSMeeting_Compile)
{
return "编制";
}
else if (state.ToString() == BLL.Const.CQMSMeeting_Audit)
{
return "总包质量经理审批";
}
else if (state.ToString() == BLL.Const.CQMSMeeting_Complete)
{
return "审批完成";
}
else
{
return "";
}
}
return "";
}
//<summary>
//获取办理人姓名
//</summary>
//<param name="state"></param>
//<returns></returns>
protected string ConvertMan(object MeetingId)
{
if (MeetingId != null)
{
Model.Meeting_CQMSMeetingApprove a = BLL.CQMS_MeetingApproveService.GetCQMSMeetingApproveByMeetingId(MeetingId.ToString());
if (a != null)
{
if (a.ApproveMan != null)
{
return BLL.Person_PersonsService.GetPersonsNameById(a.ApproveMan);
}
}
else
{
return "";
}
}
return "";
}
protected void Grid1_RowDataBound(object sender, GridRowEventArgs e)
{
}
protected void btnMenuView_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
return;
}
string id = Grid1.SelectedRowID;
var ins = BLL.CQMS_MeetingService.GetCQMSMeetingById(id);
if (ins != null)
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("MonthMeetingView.aspx?MeetingId={0}", id, "查看 - ")));
}
}
protected void btnQuery_Click(object sender, EventArgs e)
{
BindGrid();
}
protected void btnRset_Click(object sender, EventArgs e)
{
BindGrid();
}
}
}