215 lines
		
	
	
		
			8.3 KiB
		
	
	
	
		
			C#
		
	
	
	
		
		
			
		
	
	
			215 lines
		
	
	
		
			8.3 KiB
		
	
	
	
		
			C#
		
	
	
	
|  | using System; | |||
|  | using System.Collections.Generic; | |||
|  | using System.Linq; | |||
|  | using System.Web; | |||
|  | using System.Web.UI; | |||
|  | using System.Web.UI.WebControls; | |||
|  | using BLL; | |||
|  | using System.IO; | |||
|  | using Newtonsoft.Json.Linq; | |||
|  | 
 | |||
|  | namespace FineUIPro.Web.ZHGL.ProjectAccident | |||
|  | { | |||
|  |     public partial class AccidentAnalysisEdit : PageBase | |||
|  |     { | |||
|  |         /// <summary> | |||
|  |         /// 主键 | |||
|  |         /// </summary> | |||
|  |         public string AccidentAnalysisId | |||
|  |         { | |||
|  |             get | |||
|  |             { | |||
|  |                 return (string)ViewState["AccidentAnalysisId"]; | |||
|  |             } | |||
|  |             set | |||
|  |             { | |||
|  |                 ViewState["AccidentAnalysisId"] = value; | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 附件路径 | |||
|  |         /// </summary> | |||
|  |         public string FullAttachUrl | |||
|  |         { | |||
|  |             get | |||
|  |             { | |||
|  |                 return (string)ViewState["FullAttachUrl"]; | |||
|  |             } | |||
|  |             set | |||
|  |             { | |||
|  |                 ViewState["FullAttachUrl"] = value; | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         private static List<Model.ProjectAccident_AccidentAnalysisItem> items = new List<Model.ProjectAccident_AccidentAnalysisItem>(); | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 加载页面 | |||
|  |         /// </summary> | |||
|  |         /// <param name="sender"></param> | |||
|  |         /// <param name="e"></param> | |||
|  |         protected void Page_Load(object sender, EventArgs e) | |||
|  |         { | |||
|  |             if (!IsPostBack) | |||
|  |             { | |||
|  |                 ////权限按钮方法 | |||
|  |                 this.GetButtonPower(); | |||
|  |                 items.Clear(); | |||
|  |                 this.btnClose.OnClientClick = ActiveWindow.GetHideReference(); | |||
|  |                 BLL.ProjectService.InitProjectDropDownList(ddlProjectId, true); | |||
|  | 
 | |||
|  |                 this.AccidentAnalysisId = Request.Params["AccidentAnalysisId"]; | |||
|  |                 var accidentAnalysis = BLL.AccidentAnalysisService.GetAccidentAnalysisById(this.AccidentAnalysisId); | |||
|  |                 if (accidentAnalysis != null) | |||
|  |                 { | |||
|  |                     this.txtCompileMan.Text = accidentAnalysis.CompileMan; | |||
|  |                     this.txtRemarks.Text = accidentAnalysis.Remarks; | |||
|  |                     if (accidentAnalysis.CompileDate != null) | |||
|  |                     { | |||
|  |                         this.dpkCompileDate.Text = string.Format("{0:yyyy-MM-dd}", accidentAnalysis.CompileDate); | |||
|  |                     } | |||
|  | 
 | |||
|  |                     if (!string.IsNullOrEmpty(accidentAnalysis.ProjectId)) | |||
|  |                     { | |||
|  |                         this.ddlProjectId.SelectedValue = accidentAnalysis.ProjectId; | |||
|  |                     } | |||
|  |                     items = BLL.AccidentAnalysisItemService.GetItemsNoSum(AccidentAnalysisId); | |||
|  |                     this.Grid1.DataSource = items; | |||
|  |                     this.Grid1.DataBind(); | |||
|  |                 } | |||
|  |                 else | |||
|  |                 { | |||
|  |                     var accidentTypes = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_0012); | |||
|  |                     foreach (var a in accidentTypes) | |||
|  |                     { | |||
|  |                         if (a.ConstText != "总计") | |||
|  |                         { | |||
|  |                             Model.ProjectAccident_AccidentAnalysisItem item = new Model.ProjectAccident_AccidentAnalysisItem | |||
|  |                             { | |||
|  |                                 AccidentAnalysisItemId = SQLHelper.GetNewID(typeof(Model.ProjectAccident_AccidentAnalysisItem)), | |||
|  |                                 AccidentType = a.ConstText | |||
|  |                             }; | |||
|  |                             items.Add(item); | |||
|  |                         } | |||
|  |                     } | |||
|  |                     this.Grid1.DataSource = items; | |||
|  |                     this.Grid1.DataBind(); | |||
|  |                     this.dpkCompileDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now); | |||
|  |                 } | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         /// <summary> | |||
|  |         /// 保存按钮 | |||
|  |         /// </summary> | |||
|  |         /// <param name="sender"></param> | |||
|  |         /// <param name="e"></param> | |||
|  |         protected void btnSave_Click(object sender, EventArgs e) | |||
|  |         { | |||
|  |             Model.ProjectAccident_AccidentAnalysis accidentAnalysis = new Model.ProjectAccident_AccidentAnalysis(); | |||
|  | 
 | |||
|  |             if (this.ddlProjectId.SelectedValue == BLL.Const._Null) | |||
|  |             { | |||
|  |                 ShowNotify("请选择项目"); | |||
|  |                 return; | |||
|  |             } | |||
|  |             accidentAnalysis.Remarks = this.txtRemarks.Text.Trim(); | |||
|  |             accidentAnalysis.CompileMan = this.txtCompileMan.Text.Trim(); | |||
|  |             if (!string.IsNullOrEmpty(this.dpkCompileDate.Text.Trim())) | |||
|  |             { | |||
|  |                 accidentAnalysis.CompileDate = Convert.ToDateTime(this.dpkCompileDate.Text.Trim()); | |||
|  |             } | |||
|  |             if (this.ddlProjectId.SelectedValue != BLL.Const._Null) | |||
|  |             { | |||
|  |                 accidentAnalysis.ProjectId = this.ddlProjectId.SelectedValue; | |||
|  |             } | |||
|  |             if (string.IsNullOrEmpty(this.AccidentAnalysisId)) | |||
|  |             { | |||
|  |                 accidentAnalysis.AccidentAnalysisId = SQLHelper.GetNewID(typeof(Model.ProjectAccident_AccidentAnalysis)); | |||
|  |                 BLL.AccidentAnalysisService.AddAccidentAnalysis(accidentAnalysis); | |||
|  |                 BLL.LogService.AddSys_Log(this.CurrUser, string.Empty, string.Empty, BLL.Const.ServerAccidentAnalysisMenuId, BLL.Const.BtnAdd); | |||
|  |             } | |||
|  |             else | |||
|  |             { | |||
|  |                 accidentAnalysis.AccidentAnalysisId = this.AccidentAnalysisId; | |||
|  |                 BLL.AccidentAnalysisService.UpdateAccidentAnalysis(accidentAnalysis); | |||
|  |                 BLL.AccidentAnalysisItemService.DeleteAccidentAnalysisItemByAccidentAnalysisId(AccidentAnalysisId); | |||
|  |                 BLL.LogService.AddSys_Log(this.CurrUser, string.Empty, string.Empty, BLL.Const.ServerAccidentAnalysisMenuId, BLL.Const.BtnModify); | |||
|  |             } | |||
|  | 
 | |||
|  |             AddItems(accidentAnalysis.AccidentAnalysisId); | |||
|  |             // 2. 关闭本窗体,然后刷新父窗体 | |||
|  |             // PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference()); | |||
|  |             // 2. 关闭本窗体,然后回发父窗体 | |||
|  |             PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference()); | |||
|  |             //PageContext.RegisterStartupScript(ActiveWindow.GetWriteBackValueReference(wedId) + ActiveWindow.GetHideReference()); | |||
|  | 
 | |||
|  |         } | |||
|  | 
 | |||
|  |         private void AddItems(string accidentCauseReportId) | |||
|  |         { | |||
|  |             int Death = 0, Injuries = 0, MinorInjuries = 0; | |||
|  |             foreach (JObject mergedRow in Grid1.GetMergedData()) | |||
|  |             { | |||
|  |                 JObject values = mergedRow.Value<JObject>("values"); | |||
|  |                 if (values["AccidentType"].ToString() != "") | |||
|  |                 { | |||
|  |                     Model.ProjectAccident_AccidentAnalysisItem item = items.FirstOrDefault(x => x.AccidentType == values["AccidentType"].ToString()); | |||
|  |                     if (values["Death"].ToString() != "") | |||
|  |                     { | |||
|  |                         item.Death = values.Value<int>("Death"); | |||
|  | 
 | |||
|  |                     } | |||
|  |                     if (values["Injuries"].ToString() != "") | |||
|  |                     { | |||
|  |                         item.Injuries = values.Value<int>("Injuries"); | |||
|  | 
 | |||
|  |                     } | |||
|  |                     if (values["MinorInjuries"].ToString() != "") | |||
|  |                     { | |||
|  |                         item.MinorInjuries = values.Value<int>("MinorInjuries"); | |||
|  | 
 | |||
|  |                     } | |||
|  | 
 | |||
|  |                 } | |||
|  |             } | |||
|  |             Model.ProjectAccident_AccidentAnalysisItem totalItem = new Model.ProjectAccident_AccidentAnalysisItem | |||
|  |             { | |||
|  |                 AccidentAnalysisItemId = SQLHelper.GetNewID(typeof(Model.ProjectAccident_AccidentAnalysisItem)), | |||
|  | 
 | |||
|  | 
 | |||
|  |                 Death = Death, | |||
|  |                 Injuries = Injuries, | |||
|  |                 MinorInjuries = MinorInjuries | |||
|  |             }; | |||
|  | 
 | |||
|  |             items.Add(totalItem); | |||
|  |             foreach (var item in items) | |||
|  |             { | |||
|  |                 item.AccidentAnalysisId = accidentCauseReportId; | |||
|  |                 BLL.AccidentAnalysisItemService.AddAccidentAnalysisItem(item); | |||
|  |             } | |||
|  |         } | |||
|  | 
 | |||
|  |         #region 获取按钮权限 | |||
|  |         /// <summary> | |||
|  |         /// 获取按钮权限 | |||
|  |         /// </summary> | |||
|  |         /// <param name="button"></param> | |||
|  |         /// <returns></returns> | |||
|  |         private void GetButtonPower() | |||
|  |         { | |||
|  |             var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.ServerAccidentAnalysisMenuId); | |||
|  |             if (buttonList.Count() > 0) | |||
|  |             { | |||
|  | 
 | |||
|  |                 if (buttonList.Contains(BLL.Const.BtnSave)) | |||
|  |                 { | |||
|  |                     this.btnSave.Hidden = false; | |||
|  |                 } | |||
|  |             } | |||
|  |         } | |||
|  |         #endregion | |||
|  |     } | |||
|  | } |