using BLL; using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.Linq; namespace FineUIPro.Web.ZHGL.Information { public partial class ReportSubmit : PageBase { #region 定义变量 /// /// 报表类别 /// public string Type { get { return (string)ViewState["Type"]; } set { ViewState["Type"] = value; } } /// /// 报表主键Id /// public string Id { get { return (string)ViewState["Id"]; } set { ViewState["Id"] = value; } } #endregion #region 加载页面 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { this.Type = Request.Params["Type"]; this.Id = Request.Params["Id"]; this.BindGrid(); } } #endregion #region 人员下拉框绑定数据 /// /// 绑定数据 /// private void BindGrid() { string unitId = BLL.Const.UnitId_CWCEC; string strSql = @"SELECT UserId,UserName,UserCode,role.RoleName" + @" FROM Sys_User AS users" + @" LEFT JOIN Sys_Role AS role ON users.RoleId= role.RoleId" + @" WHERE users.IsPost=1 AND role.IsAuditFlow=1 AND users.IsOffice =1 AND UnitId ='" + unitId + "'"; List listStr = new List(); if (!string.IsNullOrEmpty(this.txtUserName.Text.Trim())) { strSql += " AND (UserName LIKE @Name OR UserCode LIKE @Name OR role.RoleName LIKE @Name)"; listStr.Add(new SqlParameter("@Name", "%" + this.txtUserName.Text.Trim() + "%")); } 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(); } #region 查询 /// /// 下拉框查询 /// /// /// protected void TextBox_TextChanged(object sender, EventArgs e) { this.drpHandleMan.Values = null; this.BindGrid(); } #endregion #endregion #region 保存 /// /// 保存按钮 /// /// /// protected void btnSave_Click(object sender, EventArgs e) { string handleMan = this.drpHandleMan.Value; string handleStates = (this.cbNext.SelectedValue == "0") ? BLL.Const.HandleState_4 : BLL.Const.HandleState_3; if (!string.IsNullOrEmpty(handleMan) && handleMan != Const._Null) { #region 企业安全数据统计月报 if (Type == "MillionsMonthlyReport")//企业安全数据统计月报 { var report = BLL.MillionsMonthlyReportService.GetMillionsMonthlyReportByMillionsMonthlyReportId(Id); if (report != null) { SetFlowData(Const.MillionsMonthlyReportMenuId, this.Id, handleMan); report.HandleState = handleStates; report.HandleMan = handleMan; BLL.MillionsMonthlyReportService.UpdateMillionsMonthlyReport(report); } } #endregion #region 职工伤亡事故原因分析 if (Type == "AccidentCauseReport")//职工伤亡事故原因分析 { var report = BLL.AccidentCauseReportService.GetAccidentCauseReportByAccidentCauseReportId(Id); if (report != null) { SetFlowData(Const.AccidentCauseReportMenuId, this.Id, handleMan); report.HandleState = handleStates; report.HandleMan = handleMan; BLL.AccidentCauseReportService.UpdateAccidentCauseReport(report); } } #endregion #region 安全生产数据季报 if (Type == "SafetyQuarterlyReport")//安全生产数据季报 { var report = BLL.SafetyQuarterlyReportService.GetSafetyQuarterlyReportById(Id); if (report != null) { SetFlowData(Const.SafetyQuarterlyReportMenuId, this.Id, handleMan); report.HandleState = handleStates; report.HandleMan = handleMan; BLL.SafetyQuarterlyReportService.UpdateSafetyQuarterlyReport(report); } } #endregion #region 应急演练开展情况季报表 if (Type == "DrillConductedQuarterlyReport")//应急演练开展情况季报表 { var report = BLL.DrillConductedQuarterlyReportService.GetDrillConductedQuarterlyReportById(Id); if (report != null) { SetFlowData(Const.DrillConductedQuarterlyReportMenuId, this.Id, handleMan); report.HandleState = handleStates; report.HandleMan = handleMan; BLL.DrillConductedQuarterlyReportService.UpdateDrillConductedQuarterlyReport(report); } } #endregion #region 应急演练工作计划半年报 if (Type == "DrillPlanHalfYearReport")//应急演练工作计划半年报 { var report = BLL.DrillPlanHalfYearReportService.GetDrillPlanHalfYearReportById(this.Id); if (report != null) { SetFlowData(Const.DrillPlanHalfYearReportMenuId, this.Id, handleMan); report.HandleState = handleStates; report.HandleMan = handleMan; BLL.DrillPlanHalfYearReportService.UpdateDrillPlanHalfYearReport(report); } } #endregion #region 安全管理工作总结报告 //if (Type== "WorkSummaryReport")//安全管理工作总结报告 //{ // var report = BLL.WorkSummaryReportService.GetWorkSummaryReportById(this.Id); // if (report != null) // { // SetFlowData(Const.WorkSummaryReportMenuId, this.Id, handleMan); // report.HandleState = handleStates; // report.HandleMan = handleMan; // BLL.WorkSummaryReportService.UpdateWorkSummaryReport(report); // } //} #endregion #region 质量管理工作总结报告 //if (Type == "QualityWorkSummaryReport")//质量管理工作总结报告 //{ // var report = BLL.QualityWorkSummaryReportService.GetQualityWorkSummaryReportById(this.Id); // if (report != null) // { // SetFlowData(Const.QualityWorkSummaryReportMenuId, this.Id, handleMan); // report.HandleState = handleStates; // report.HandleMan = handleMan; // BLL.QualityWorkSummaryReportService.UpdateQualityWorkSummaryReport(report); // } //} #endregion ShowNotify("提交成功!", MessageBoxIcon.Success); PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference()); } else { Alert.ShowInParent("请选择办理人!", MessageBoxIcon.Warning); } } #endregion /// /// /// /// /// private void SetFlowData(string menuId, string dataId,string handleMan) { var getIsExitOperate = Funs.DB.ProjectData_FlowOperate.FirstOrDefault(x => x.DataId == this.Id); if (getIsExitOperate == null) //首次生成审批记录 { ////编制人添加记录信息 Model.ProjectData_FlowOperate newFlow = new Model.ProjectData_FlowOperate { MenuId = menuId, DataId = this.Id, OperaterId = this.CurrUser.UserId, OperaterTime = DateTime.Now, IsClosed = true, State = BLL.Const.State_1, Opinion = this.txtOpinion.Text }; BLL.ProjectDataFlowSetService.AddProjectData_FlowOperate(newFlow); } ////更新 当前人要处理的意见 var updateUnFlowOperate = Funs.DB.ProjectData_FlowOperate.FirstOrDefault(x => x.MenuId == menuId && x.DataId == dataId && (x.IsClosed == false || !x.IsClosed.HasValue)); if (updateUnFlowOperate != null) { updateUnFlowOperate.OperaterTime = DateTime.Now; updateUnFlowOperate.Opinion = this.txtOpinion.Text; updateUnFlowOperate.IsClosed = true; BLL.ProjectDataFlowSetService.UpdateFlowOperateOpinion(updateUnFlowOperate); } string states = (this.cbNext.SelectedValue == "0") ? BLL.Const.State_2: BLL.Const.State_1; ////增加 下一步办理信息 Model.ProjectData_FlowOperate newdateUnFlowOperate = new Model.ProjectData_FlowOperate { MenuId = menuId, DataId = this.Id, OperaterId = handleMan, IsClosed = false, State = states, }; BLL.ProjectDataFlowSetService.AddProjectData_FlowOperate(newdateUnFlowOperate); } /// /// /// /// /// protected void cbNext_SelectedIndexChanged(object sender, EventArgs e) { if (this.cbNext.SelectedValue == "0") { this.drpHandleMan.Label = "上报人"; var getFData = Funs.DB.ProjectData_FlowOperate.FirstOrDefault(x => x.DataId == Id && x.SortIndex == 1); if (getFData != null) { this.drpHandleMan.Value = getFData.OperaterId; } } else { this.drpHandleMan.Label = "办理人"; this.drpHandleMan.Value = string.Empty; } } } }