using BLL; using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.IO; using System.Linq; namespace FineUIPro.Web.ZHGL.Supervise { public partial class SubUnitCheckRectifyEdit : PageBase { #region 定义变量 /// /// 监督检查报告主键 /// public string SuperviseCheckReportId { get { return (string)ViewState["SuperviseCheckReportId"]; } set { ViewState["SuperviseCheckReportId"] = value; } } /// /// 监督评价报告主键 /// public string SubUnitCheckRectifyId { get { return (string)ViewState["SubUnitCheckRectifyId"]; } set { ViewState["SubUnitCheckRectifyId"] = value; } } /// /// 附件路径 /// public string FullAttachUrl { get { return (string)ViewState["FullAttachUrl"]; } set { ViewState["FullAttachUrl"] = value; } } /// /// 定义集合 /// private static List subUnitCheckRectifyItems = new List(); #endregion #region 加载页面 /// /// 加载页面 /// /// /// protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { GetButtonPower(); subUnitCheckRectifyItems.Clear(); this.drpUnitId.SelectedValue = this.CurrUser.UnitId; this.dpkUpDateTime.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now); this.drpUnitId.DataTextField = "UnitName"; this.drpUnitId.DataValueField = "UnitId"; this.drpUnitId.DataSource = BLL.UnitService.GetThisUnitDropDownList(); this.drpUnitId.DataBind(); this.drpCheckRectType.DataTextField = "ConstText"; this.drpCheckRectType.DataValueField = "ConstValue"; this.drpCheckRectType.DataSource = BLL.ConstValue.drpConstItemList(BLL.ConstValue.Group_CheckRectType); this.drpCheckRectType.DataBind(); this.SuperviseCheckReportId = Request.Params["SuperviseCheckReportId"]; if (!string.IsNullOrEmpty(this.SuperviseCheckReportId)) { Model.Supervise_SubUnitCheckRectify subUnitCheckRectify = BLL.SubUnitCheckRectifyService.GetSubUnitCheckRectifyBySuperviseCheckReportId(this.SuperviseCheckReportId); if (subUnitCheckRectify != null) { this.SubUnitCheckRectifyId = subUnitCheckRectify.SubUnitCheckRectifyId; if (!string.IsNullOrEmpty(subUnitCheckRectify.UnitId)) { this.drpUnitId.SelectedValue = subUnitCheckRectify.UnitId; } this.drpCheckRectType.SelectedValue = subUnitCheckRectify.CheckRectType; if (subUnitCheckRectify.UpDateTime.HasValue) { this.dpkUpDateTime.Text = string.Format("{0:yyyy-MM-dd}", subUnitCheckRectify.UpDateTime); } if (subUnitCheckRectify.CheckEndDate.HasValue) { this.dpkCheckEndDate.Text = string.Format("{0:yyyy-MM-dd}", subUnitCheckRectify.CheckEndDate); } this.txtValues1.Text = subUnitCheckRectify.Values1.Trim(); this.txtValues2.Text = subUnitCheckRectify.Values2.Trim(); this.txtValues3.Text = subUnitCheckRectify.Values3.Trim(); this.txtValues4.Text = subUnitCheckRectify.Values4.Trim(); this.txtValues5.Text = subUnitCheckRectify.Values5.Trim(); this.txtValues6.Text = subUnitCheckRectify.Values6.Trim(); this.txtValues7.Text = subUnitCheckRectify.Values7.Trim(); this.txtValues8.Text = subUnitCheckRectify.Values8.Trim(); if (!string.IsNullOrEmpty(subUnitCheckRectify.AttachUrl)) { this.FullAttachUrl = subUnitCheckRectify.AttachUrl; this.lbAttachUrl.Text = subUnitCheckRectify.AttachUrl.Substring(subUnitCheckRectify.AttachUrl.IndexOf("~") + 1); } subUnitCheckRectifyItems = BLL.SubUnitCheckRectifyItemService.GetSubUnitCheckRectifyItemList(this.SubUnitCheckRectifyId); int i = subUnitCheckRectifyItems.Count * 10; int count = subUnitCheckRectifyItems.Count; if (count < 10) { for (int j = 0; j < (10 - count); j++) { Model.Supervise_SubUnitCheckRectifyItem newItem = new Model.Supervise_SubUnitCheckRectifyItem { SubUnitCheckRectifyItemId = SQLHelper.GetNewID(typeof(Model.Supervise_SubUnitCheckRectifyItem)) }; subUnitCheckRectifyItems.Add(newItem); } } this.Grid1.DataSource = subUnitCheckRectifyItems; this.Grid1.DataBind(); } else { for (int i = 0; i < 10; i++) { Model.Supervise_SubUnitCheckRectifyItem newItem = new Model.Supervise_SubUnitCheckRectifyItem { SubUnitCheckRectifyItemId = SQLHelper.GetNewID(typeof(Model.Supervise_SubUnitCheckRectifyItem)) }; subUnitCheckRectifyItems.Add(newItem); } Grid1.DataSource = subUnitCheckRectifyItems; Grid1.DataBind(); } } } } #endregion #region 保存 /// /// 保存按钮 /// /// /// protected void btnSave_Click(object sender, EventArgs e) { SaveData(BLL.Const.UpState_1); PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference()); } /// /// 保存数据 /// private void SaveData(string upState) { Model.Supervise_SubUnitCheckRectify subUnitCheckRectify = new Model.Supervise_SubUnitCheckRectify { SuperviseCheckReportId = this.SuperviseCheckReportId }; if (this.drpUnitId.SelectedValue != BLL.Const._Null) { subUnitCheckRectify.UnitId = this.drpUnitId.SelectedValue; } if (this.drpCheckRectType.SelectedValue != BLL.Const._Null) { subUnitCheckRectify.CheckRectType = this.drpCheckRectType.SelectedValue; } subUnitCheckRectify.Values1 = this.txtValues1.Text.Trim(); subUnitCheckRectify.Values2 = this.txtValues2.Text.Trim(); subUnitCheckRectify.Values3 = this.txtValues3.Text.Trim(); subUnitCheckRectify.Values4 = this.txtValues4.Text.Trim(); subUnitCheckRectify.Values5 = this.txtValues5.Text.Trim(); subUnitCheckRectify.Values6 = this.txtValues6.Text.Trim(); subUnitCheckRectify.Values7 = this.txtValues7.Text.Trim(); subUnitCheckRectify.Values8 = this.txtValues8.Text.Trim(); subUnitCheckRectify.AttachUrl = this.FullAttachUrl; subUnitCheckRectify.UpState = upState; subUnitCheckRectify.UpDateTime = Funs.GetNewDateTime(this.dpkUpDateTime.Text.Trim()); subUnitCheckRectify.CheckEndDate = Funs.GetNewDateTime(this.dpkCheckEndDate.Text.Trim()); if (!string.IsNullOrEmpty(this.SubUnitCheckRectifyId)) { subUnitCheckRectify.SubUnitCheckRectifyId = this.SubUnitCheckRectifyId; BLL.SubUnitCheckRectifyService.UpdateSubUnitCheckRectify(subUnitCheckRectify); BLL.SubUnitCheckRectifyItemService.DeleteSubUnitCheckRectifyItemsList(this.SubUnitCheckRectifyId); BLL.LogService.AddSys_Log(this.CurrUser, string.Empty, subUnitCheckRectify.SubUnitCheckRectifyId, BLL.Const.SuperviseCheckReportMenuId, Const.BtnModify); } else { subUnitCheckRectify.SubUnitCheckRectifyId = SQLHelper.GetNewID(typeof(Model.Supervise_SubUnitCheckRectify)); BLL.SubUnitCheckRectifyService.AddSubUnitCheckRectify(subUnitCheckRectify); BLL.LogService.AddSys_Log(this.CurrUser, string.Empty, subUnitCheckRectify.SubUnitCheckRectifyId, BLL.Const.SuperviseCheckReportMenuId, Const.BtnAdd); } this.GetItems(subUnitCheckRectify.SubUnitCheckRectifyId); foreach (var item in subUnitCheckRectifyItems) { if (!string.IsNullOrEmpty(item.Name)) { BLL.SubUnitCheckRectifyItemService.AddSubUnitCheckRectifyItem(item); } } } /// /// 获取明细 /// /// private void GetItems(string subUnitCheckRectifyId) { subUnitCheckRectifyItems.Clear(); foreach (JObject mergedRow in Grid1.GetMergedData()) { JObject values = mergedRow.Value("values"); Model.Supervise_SubUnitCheckRectifyItem item = new Model.Supervise_SubUnitCheckRectifyItem(); if (values["SubUnitCheckRectifyItemId"].ToString() != "") { item.SubUnitCheckRectifyItemId = values.Value("SubUnitCheckRectifyItemId"); } item.SubUnitCheckRectifyId = subUnitCheckRectifyId; if (values["Name"].ToString() != "") { item.Name = values.Value("Name"); } if (values["Sex"].ToString() != "") { item.Sex = values.Value("Sex"); } if (values["UnitName"].ToString() != "") { item.UnitName = values.Value("UnitName"); } if (values["PostName"].ToString() != "") { item.PostName = values.Value("PostName"); } if (values["WorkTitle"].ToString() != "") { item.WorkTitle = values.Value("WorkTitle"); } if (values["CheckPostName"].ToString() != "") { item.CheckPostName = values.Value("CheckPostName"); } if (values["CheckDate"].ToString() != "") { item.CheckDate = Convert.ToDateTime(values.Value("CheckDate")); } subUnitCheckRectifyItems.Add(item); } } #endregion #region Grid点击事件 /// /// Grid1行点击事件 /// /// /// protected void Grid1_RowCommand(object sender, GridCommandEventArgs e) { string rowID = Grid1.DataKeys[e.RowIndex][0].ToString(); GetItems(string.Empty); if (e.CommandName == "Add") { Model.Supervise_SubUnitCheckRectifyItem newItem = new Model.Supervise_SubUnitCheckRectifyItem { SubUnitCheckRectifyItemId = SQLHelper.GetNewID(typeof(Model.Supervise_SubUnitCheckRectifyItem)) }; subUnitCheckRectifyItems.Add(newItem); Grid1.DataSource = subUnitCheckRectifyItems; Grid1.DataBind(); } if (e.CommandName == "Delete") { foreach (var item in subUnitCheckRectifyItems) { if (item.SubUnitCheckRectifyItemId == rowID) { subUnitCheckRectifyItems.Remove(item); break; } } Grid1.DataSource = subUnitCheckRectifyItems; Grid1.DataBind(); ShowNotify("删除数据成功!", MessageBoxIcon.Success); } } #endregion #region 附件上传 /// /// 附件上传 /// /// /// protected void btnUpAttachUrl_Click(object sender, EventArgs e) { if (fuAttachUrl.HasFile) { this.lbAttachUrl.Text = fuAttachUrl.ShortFileName; if (ValidateFileTypes(this.lbAttachUrl.Text)) { ShowNotify("无效的文件类型!", MessageBoxIcon.Warning); return; } this.FullAttachUrl = BLL.UploadFileService.UploadAttachment(BLL.Funs.RootPath, this.fuAttachUrl, this.FullAttachUrl, UploadFileService.SubUnitCheckRectifyFilePath); if (string.IsNullOrEmpty(this.FullAttachUrl)) { ShowNotify("文件名已经存在!", MessageBoxIcon.Warning); return; } else { ShowNotify("文件上传成功!", MessageBoxIcon.Success); } } else { ShowNotify("上传文件不存在!", MessageBoxIcon.Warning); } } /// /// 查看附件 /// /// /// protected void btnSeeAttachUrl_Click(object sender, EventArgs e) { string filePath = BLL.Funs.RootPath + this.FullAttachUrl; string fileName = Path.GetFileName(filePath); FileInfo info = new FileInfo(filePath); if (info.Exists) { long fileSize = info.Length; Response.Clear(); Response.ContentType = "application/x-zip-compressed"; Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8)); Response.AddHeader("Content-Length", fileSize.ToString()); Response.TransmitFile(filePath, 0, fileSize); Response.Flush(); Response.Close(); this.SimpleForm1.Reset(); } else { ShowNotify("文件不存在!", MessageBoxIcon.Warning); } } /// /// 删除附件 /// /// /// protected void btnDeleteAttachUrl_Click(object sender, EventArgs e) { this.fuAttachUrl.Reset(); this.lbAttachUrl.Text = string.Empty; this.FullAttachUrl = string.Empty; } #endregion #region 权限设置 /// /// 权限设置 /// private void GetButtonPower() { var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.SuperviseCheckReportMenuId); if (buttonList.Count() > 0) { if (buttonList.Contains(BLL.Const.BtnSave)) { this.btnSave.Hidden = false; this.btnUpAttachUrl.Hidden = false; this.btnDeleteAttachUrl.Hidden = false; } } } #endregion } }