using Aspose.Words; using BLL; using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.IO; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace FineUIPro.Web.CQMS.Check { public partial class CheckMonthFile : PageBase { /// /// 项目id /// public string ProjectId { get { return (string)ViewState["ProjectId"]; } set { ViewState["ProjectId"] = value; } } protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { this.ProjectId = this.CurrUser.LoginProjectId; BindGrid(); } } #region 绑定数据 /// /// 绑定数据 /// public void BindGrid() { DataTable tb = ChecklistData(); Grid1.RecordCount = tb.Rows.Count; tb = GetFilteredTable(Grid1.FilteredData, tb); var table = this.GetPagedDataTable(Grid1, tb); Grid1.DataSource = table; Grid1.DataBind(); } protected DataTable ChecklistData() { string strSql = @"select C.CheckMonthId,C.ProjectId,C.Months,C.CompileDate,C.CompileMan, U.UserName from Check_CheckMonth C left join Sys_User U on U.UserId = C.CompileMan where 1=1"; List listStr = new List(); strSql += " AND C.ProjectId = @ProjectId"; listStr.Add(new SqlParameter("@ProjectId", this.ProjectId)); SqlParameter[] parameter = listStr.ToArray(); DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter); return tb; } #endregion #region 操作数据 //查看 protected void btnMenuView_Click(object sender, EventArgs e) { if (Grid1.SelectedRowIndexArray.Length == 0) { Alert.ShowInTop("请至少选择一条记录", MessageBoxIcon.Warning); return; } PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("EditCheckMonth.aspx?see=see&CheckMonthId={0}", Grid1.SelectedRowID, "查看 - "))); } #endregion protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e) { BindGrid(); } protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e) { BindGrid(); } protected void Window1_Close(object sender, WindowCloseEventArgs e) { BindGrid(); } protected void Grid1_RowCommand(object sender, GridCommandEventArgs e) { object[] keys = Grid1.DataKeys[e.RowIndex]; string fileId = string.Empty; if (keys == null) { return; } else { fileId = keys[0].ToString(); } if (e.CommandName == "export") { string rootPath = Server.MapPath("~/"); string initTemplatePath = string.Empty; string uploadfilepath = string.Empty; string newUrl = string.Empty; string unitType = string.Empty; string auditDate = string.Empty; string filePath = string.Empty; string auditMan1 = string.Empty; string auditMan2 = string.Empty; string auditDate1 = string.Empty; string approveIdea1 = string.Empty; string approveIdea2 = string.Empty; string approveIdea3 = string.Empty; string auditDate2 = string.Empty; string auditDate3 = string.Empty; string auditMan3 = string.Empty; string auditMan4 = string.Empty; string approveIdea = string.Empty; Model.Check_CheckMonth checkMonth = CheckMonthService.GetCheckMonth(fileId); Model.Project_Sys_Set CheckMonthStartDay = BLL.Project_SysSetService.GetSysSetBySetName("月报开始日期", this.CurrUser.LoginProjectId); Model.Project_Sys_Set CheckMonthEndDay = BLL.Project_SysSetService.GetSysSetBySetName("月报结束日期", this.CurrUser.LoginProjectId); DateTime startTime = Convert.ToDateTime(checkMonth.Months.Value.AddMonths(-1).Year.ToString() + "-" + checkMonth.Months.Value.AddMonths(-1).Month.ToString() + "-25"); DateTime endTime = startTime.AddMonths(1); if (CheckMonthStartDay != null) { if (CheckMonthStartDay.SetValue != "") { if (CheckMonthEndDay != null) { if (CheckMonthEndDay.SetValue != "") { startTime = Convert.ToDateTime(checkMonth.Months.Value.AddMonths(-1).Year.ToString() + "-" + checkMonth.Months.Value.AddMonths(-1).Month.ToString() + "-" + CheckMonthStartDay.SetValue); endTime = Convert.ToDateTime(checkMonth.Months.Value.AddMonths(-1).Year.ToString() + "-" + checkMonth.Months.Value.AddMonths(-1).Month.ToString() + "-" + CheckMonthEndDay.SetValue); } else { startTime = Convert.ToDateTime(checkMonth.Months.Value.AddMonths(-1).Year.ToString() + "-" + checkMonth.Months.Value.AddMonths(-1).Month.ToString() + "-" + CheckMonthStartDay.SetValue); endTime = startTime.AddMonths(1); } } else { startTime = Convert.ToDateTime(checkMonth.Months.Value.AddMonths(-1).Year.ToString() + "-" + checkMonth.Months.Value.AddMonths(-1).Month.ToString() + "-" + CheckMonthStartDay.SetValue); endTime = startTime.AddMonths(1); } } else { if (CheckMonthEndDay != null) { if (CheckMonthEndDay.SetValue != "") { startTime = Convert.ToDateTime(checkMonth.Months.Value.AddMonths(-1).Year.ToString() + "-" + checkMonth.Months.Value.AddMonths(-1).Month.ToString() + "-" + CheckMonthEndDay.SetValue); endTime = startTime.AddMonths(1); } } } } else { if (CheckMonthEndDay != null) { if (CheckMonthEndDay.SetValue != null) { startTime = Convert.ToDateTime(checkMonth.Months.Value.AddMonths(-1).Year.ToString() + "-" + checkMonth.Months.Value.AddMonths(-1).Month.ToString() + "-" + CheckMonthEndDay.SetValue); endTime = startTime.AddMonths(1); } } } initTemplatePath = Const.CheckMonthTemplateUrl; uploadfilepath = rootPath + initTemplatePath; newUrl = uploadfilepath.Replace(".doc", string.Format("{0:yyyy-MM}", checkMonth.Months) + ".doc"); filePath = initTemplatePath.Replace(".doc", string.Format("{0:yyyy-MM}", checkMonth.Months) + ".pdf"); File.Copy(uploadfilepath, newUrl); //更新书签内容 Document doc = new Aspose.Words.Document(newUrl); Bookmark bookmarkProjectName = doc.Range.Bookmarks["ProjectName"]; if (bookmarkProjectName != null) { var project = ProjectService.GetProjectByProjectId(checkMonth.ProjectId); if (project != null) { bookmarkProjectName.Text = project.ProjectName; } } Bookmark bookmarkYear1 = doc.Range.Bookmarks["Year1"]; if (bookmarkYear1 != null) { bookmarkYear1.Text = startTime.Year.ToString(); } Bookmark bookmarkMonth1 = doc.Range.Bookmarks["Month1"]; if (bookmarkMonth1 != null) { bookmarkMonth1.Text = startTime.Month.ToString(); } Bookmark bookmarkDay1 = doc.Range.Bookmarks["Day1"]; if (bookmarkDay1 != null) { bookmarkDay1.Text = startTime.Day.ToString(); } Bookmark bookmarkYear2 = doc.Range.Bookmarks["Year2"]; if (bookmarkYear2 != null) { bookmarkYear2.Text = endTime.Year.ToString(); } Bookmark bookmarkMonth2 = doc.Range.Bookmarks["Month2"]; if (bookmarkMonth2 != null) { bookmarkMonth2.Text = endTime.Month.ToString(); } Bookmark bookmarkDay2 = doc.Range.Bookmarks["Day2"]; if (bookmarkDay2 != null) { bookmarkDay2.Text = (endTime.Day - 1).ToString(); } Bookmark bookmarkManagementOverview = doc.Range.Bookmarks["ManagementOverview"]; if (bookmarkManagementOverview != null) { bookmarkManagementOverview.Text = checkMonth.ManagementOverview ?? ""; } Bookmark bookmarkAccidentSituation = doc.Range.Bookmarks["AccidentSituation"]; if (bookmarkAccidentSituation != null) { bookmarkAccidentSituation.Text = checkMonth.AccidentSituation ?? ""; } Aspose.Words.DocumentBuilder builder = new Aspose.Words.DocumentBuilder(doc); //质量缺陷/不合格项整改关闭情况 List checkLists = JointCheckDetailService.GetJointCheckDetailListByTime(CurrUser.LoginProjectId, startTime, endTime); List totalCheckLists = JointCheckDetailService.GetTotalJointCheckDetailListByTime(CurrUser.LoginProjectId, endTime); Bookmark bookmarkThisCheck1 = doc.Range.Bookmarks["ThisCheck1"]; if (bookmarkThisCheck1 != null) { bookmarkThisCheck1.Text = checkLists.Where(x => x.ProposeUnitType == "11").Count().ToString(); } Bookmark bookmarkThisOKCheck1 = doc.Range.Bookmarks["ThisOKCheck1"]; if (bookmarkThisOKCheck1 != null) { bookmarkThisOKCheck1.Text = checkLists.Where(x => x.ProposeUnitType == "11" && x.OK == 1).Count().ToString(); } Bookmark bookmarkTotalCheck1 = doc.Range.Bookmarks["TotalCheck1"]; if (bookmarkTotalCheck1 != null) { bookmarkTotalCheck1.Text = totalCheckLists.Where(x => x.ProposeUnitType == "11").Count().ToString(); } Bookmark bookmarkTotalOKCheck1 = doc.Range.Bookmarks["TotalOKCheck1"]; if (bookmarkTotalOKCheck1 != null) { bookmarkTotalOKCheck1.Text = totalCheckLists.Where(x => x.ProposeUnitType == "11" && x.OK == 1).Count().ToString(); } Bookmark bookmarkThisCheck2 = doc.Range.Bookmarks["ThisCheck2"]; if (bookmarkThisCheck2 != null) { bookmarkThisCheck2.Text = checkLists.Where(x => x.ProposeUnitType == "8").Count().ToString(); } Bookmark bookmarkThisOKCheck2 = doc.Range.Bookmarks["ThisOKCheck2"]; if (bookmarkThisOKCheck2 != null) { bookmarkThisOKCheck2.Text = checkLists.Where(x => x.ProposeUnitType == "8" && x.OK == 1).Count().ToString(); } Bookmark bookmarkTotalCheck2 = doc.Range.Bookmarks["TotalCheck2"]; if (bookmarkTotalCheck2 != null) { bookmarkTotalCheck2.Text = totalCheckLists.Where(x => x.ProposeUnitType == "8").Count().ToString(); } Bookmark bookmarkTotalOKCheck2 = doc.Range.Bookmarks["TotalOKCheck2"]; if (bookmarkTotalOKCheck2 != null) { bookmarkTotalOKCheck2.Text = totalCheckLists.Where(x => x.ProposeUnitType == "8" && x.OK == 1).Count().ToString(); } Bookmark bookmarkThisCheck3 = doc.Range.Bookmarks["ThisCheck3"]; if (bookmarkThisCheck3 != null) { bookmarkThisCheck3.Text = checkLists.Where(x => x.ProposeUnitType == "10").Count().ToString(); } Bookmark bookmarkThisOKCheck3 = doc.Range.Bookmarks["ThisOKCheck3"]; if (bookmarkThisOKCheck3 != null) { bookmarkThisOKCheck3.Text = checkLists.Where(x => x.ProposeUnitType == "10" && x.OK == 1).Count().ToString(); } Bookmark bookmarkTotalCheck3 = doc.Range.Bookmarks["TotalCheck3"]; if (bookmarkTotalCheck3 != null) { bookmarkTotalCheck3.Text = totalCheckLists.Where(x => x.ProposeUnitType == "10").Count().ToString(); } Bookmark bookmarkTotalOKCheck3 = doc.Range.Bookmarks["TotalOKCheck3"]; if (bookmarkTotalOKCheck3 != null) { bookmarkTotalOKCheck3.Text = totalCheckLists.Where(x => x.ProposeUnitType == "10" && x.OK == 1).Count().ToString(); } Bookmark bookmarkThisCheck4 = doc.Range.Bookmarks["ThisCheck4"]; if (bookmarkThisCheck4 != null) { bookmarkThisCheck4.Text = checkLists.Where(x => x.ProposeUnitType == "1").Count().ToString(); } Bookmark bookmarkThisOKCheck4 = doc.Range.Bookmarks["ThisOKCheck4"]; if (bookmarkThisOKCheck4 != null) { bookmarkThisOKCheck4.Text = checkLists.Where(x => x.ProposeUnitType == "1" && x.OK == 1).Count().ToString(); } Bookmark bookmarkTotalCheck4 = doc.Range.Bookmarks["TotalCheck4"]; if (bookmarkTotalCheck4 != null) { bookmarkTotalCheck4.Text = totalCheckLists.Where(x => x.ProposeUnitType == "1").Count().ToString(); } Bookmark bookmarkTotalOKCheck4 = doc.Range.Bookmarks["TotalOKCheck4"]; if (bookmarkTotalOKCheck4 != null) { bookmarkTotalOKCheck4.Text = totalCheckLists.Where(x => x.ProposeUnitType == "1" && x.OK == 1).Count().ToString(); } Bookmark bookmarkThisCheck5 = doc.Range.Bookmarks["ThisCheck5"]; if (bookmarkThisCheck5 != null) { bookmarkThisCheck5.Text = checkLists.Where(x => x.ProposeUnitType == "2").Count().ToString(); } Bookmark bookmarkThisOKCheck5 = doc.Range.Bookmarks["ThisOKCheck5"]; if (bookmarkThisOKCheck5 != null) { bookmarkThisOKCheck5.Text = checkLists.Where(x => x.ProposeUnitType == "2" && x.OK == 1).Count().ToString(); } Bookmark bookmarkTotalCheck5 = doc.Range.Bookmarks["TotalCheck5"]; if (bookmarkTotalCheck5 != null) { bookmarkTotalCheck5.Text = totalCheckLists.Where(x => x.ProposeUnitType == "2").Count().ToString(); } Bookmark bookmarkTotalOKCheck5 = doc.Range.Bookmarks["TotalOKCheck5"]; if (bookmarkTotalOKCheck5 != null) { bookmarkTotalOKCheck5.Text = totalCheckLists.Where(x => x.ProposeUnitType == "2" && x.OK == 1).Count().ToString(); } Bookmark bookmarkThisCheck6 = doc.Range.Bookmarks["ThisCheck6"]; if (bookmarkThisCheck6 != null) { bookmarkThisCheck6.Text = checkLists.Where(x => x.ProposeUnitType == "5").Count().ToString(); } Bookmark bookmarkThisOKCheck6 = doc.Range.Bookmarks["ThisOKCheck6"]; if (bookmarkThisOKCheck6 != null) { bookmarkThisOKCheck6.Text = checkLists.Where(x => x.ProposeUnitType == "5" && x.OK == 1).Count().ToString(); } Bookmark bookmarkTotalCheck6 = doc.Range.Bookmarks["TotalCheck6"]; if (bookmarkTotalCheck6 != null) { bookmarkTotalCheck6.Text = totalCheckLists.Where(x => x.ProposeUnitType == "5").Count().ToString(); } Bookmark bookmarkTotalOKCheck6 = doc.Range.Bookmarks["TotalOKCheck6"]; if (bookmarkTotalOKCheck6 != null) { bookmarkTotalOKCheck6.Text = totalCheckLists.Where(x => x.ProposeUnitType == "5" && x.OK == 1).Count().ToString(); } //无损检测情况 builder.MoveToBookmark("Table2"); builder.StartTable(); //builder.RowFormat.Alignment = Aspose.Words.Tables.RowAlignment.Center; builder.CellFormat.Borders.LineStyle = LineStyle.Single; builder.CellFormat.Borders.Color = System.Drawing.Color.Black; //builder.RowFormat.LeftIndent = 5; builder.Bold = false; builder.RowFormat.Height = 20; builder.Bold = false; List units = UnitService.GetUnitByProjectIdUnitTypeList("3", CurrUser.LoginProjectId); foreach (Model.Base_Unit unit in units) { //施工分包商 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 102; builder.Write(unit.UnitName); //拍片总数 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 47; builder.Write("0"); //不合格(张) builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 56; builder.Write("0"); //已返修(张) builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 54; builder.Write("0"); //一次合格率 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 55; builder.Write("0"); //累计拍片总数 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 48; builder.Write("0"); //累计不合格(张) builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 63; builder.Write("0"); //累计一次合格率 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 63; builder.Write("0"); builder.EndRow(); } //合计 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 102; builder.Write("合计"); //拍片总数 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 47; builder.Write("0"); //不合格(张) builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 56; builder.Write("0"); //已返修(张) builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 54; builder.Write("0"); //一次合格率 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 55; builder.Write("0"); //累计拍片总数 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 48; builder.Write("0"); //累计不合格(张) builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 63; builder.Write("0"); //累计一次合格率 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 63; builder.Write("0"); builder.EndRow(); builder.EndTable(); //焊工资格评定情况 builder.MoveToBookmark("Table3"); builder.StartTable(); //builder.RowFormat.Alignment = Aspose.Words.Tables.RowAlignment.Center; builder.CellFormat.Borders.LineStyle = LineStyle.Single; builder.CellFormat.Borders.Color = System.Drawing.Color.Black; //builder.RowFormat.LeftIndent = 5; builder.Bold = false; builder.RowFormat.Height = 20; builder.Bold = false; foreach (Model.Base_Unit unit in units) { //施工分包商 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 102; builder.Write(unit.UnitName); //总人数 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 51; builder.Write("0"); //合格人数 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 72; builder.Write("0"); //合格率 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 71; builder.Write("0"); //总人数 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 53; builder.Write("0"); //合格人数 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 77; builder.Write("0"); //合格率 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 62; builder.Write("0"); builder.EndRow(); } //合计 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 102; builder.Write("合计"); //总人数 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 51; builder.Write("0"); //合格人数 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 72; builder.Write("0"); //合格率 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 71; builder.Write("0"); //总人数 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 53; builder.Write("0"); //合格人数 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 77; builder.Write("0"); //合格率 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 62; builder.Write("0"); builder.EndRow(); builder.EndTable(); //质量验收情况 var spotCheckDetails = MonthSpotCheckDetailService.GetMonthSpotCheckDetailsByCheckMonthId(fileId); if (spotCheckDetails.Count > 0) { Bookmark bookmarkTotalNum1 = doc.Range.Bookmarks["TotalNum1"]; if (bookmarkTotalNum1 != null) { bookmarkTotalNum1.Text = spotCheckDetails[0].TotalNum ?? ""; } Bookmark bookmarkThisOKNum1 = doc.Range.Bookmarks["ThisOKNum1"]; if (bookmarkThisOKNum1 != null) { bookmarkThisOKNum1.Text = spotCheckDetails[0].ThisOKNum ?? ""; } Bookmark bookmarkTotalOKNum1 = doc.Range.Bookmarks["TotalOKNum1"]; if (bookmarkTotalOKNum1 != null) { bookmarkTotalOKNum1.Text = spotCheckDetails[0].TotalOKNum ?? ""; } Bookmark bookmarkTotalOKRate1 = doc.Range.Bookmarks["TotalOKRate1"]; if (bookmarkTotalOKNum1 != null) { bookmarkTotalOKRate1.Text = spotCheckDetails[0].TotalOKRate ?? ""; } Bookmark bookmarkTotalNum2 = doc.Range.Bookmarks["TotalNum2"]; if (bookmarkTotalNum2 != null) { bookmarkTotalNum2.Text = spotCheckDetails[1].TotalNum ?? ""; } Bookmark bookmarkThisOKNum2 = doc.Range.Bookmarks["ThisOKNum2"]; if (bookmarkThisOKNum2 != null) { bookmarkThisOKNum2.Text = spotCheckDetails[1].ThisOKNum ?? ""; } Bookmark bookmarkTotalOKNum2 = doc.Range.Bookmarks["TotalOKNum2"]; if (bookmarkTotalOKNum2 != null) { bookmarkTotalOKNum2.Text = spotCheckDetails[1].TotalOKNum ?? ""; } Bookmark bookmarkTotalOKRate2 = doc.Range.Bookmarks["TotalOKRate2"]; if (bookmarkTotalOKNum2 != null) { bookmarkTotalOKRate2.Text = spotCheckDetails[1].TotalOKRate; } Bookmark bookmarkTotalNum3 = doc.Range.Bookmarks["TotalNum3"]; if (bookmarkTotalNum3 != null) { bookmarkTotalNum3.Text = spotCheckDetails[2].TotalNum; } Bookmark bookmarkThisOKNum3 = doc.Range.Bookmarks["ThisOKNum3"]; if (bookmarkThisOKNum3 != null) { bookmarkThisOKNum3.Text = spotCheckDetails[2].ThisOKNum; } Bookmark bookmarkTotalOKNum3 = doc.Range.Bookmarks["TotalOKNum3"]; if (bookmarkTotalOKNum3 != null) { bookmarkTotalOKNum3.Text = spotCheckDetails[2].TotalOKNum; } Bookmark bookmarkTotalOKRate3 = doc.Range.Bookmarks["TotalOKRate3"]; if (bookmarkTotalOKNum3 != null) { bookmarkTotalOKRate3.Text = spotCheckDetails[2].TotalOKRate; } Bookmark bookmarkTotalNum4 = doc.Range.Bookmarks["TotalNum4"]; if (bookmarkTotalNum4 != null) { bookmarkTotalNum4.Text = spotCheckDetails[3].TotalNum; } Bookmark bookmarkThisOKNum4 = doc.Range.Bookmarks["ThisOKNum4"]; if (bookmarkThisOKNum4 != null) { bookmarkThisOKNum4.Text = spotCheckDetails[3].ThisOKNum; } Bookmark bookmarkTotalOKNum4 = doc.Range.Bookmarks["TotalOKNum4"]; if (bookmarkTotalOKNum4 != null) { bookmarkTotalOKNum4.Text = spotCheckDetails[3].TotalOKNum; } Bookmark bookmarkTotalOKRate4 = doc.Range.Bookmarks["TotalOKRate4"]; if (bookmarkTotalOKNum4 != null) { bookmarkTotalOKRate4.Text = spotCheckDetails[3].TotalOKRate; } } List spotCheckDetailOKLists = SpotCheckDetailService.GetOKSpotCheckDetailListByTime1(CurrUser.LoginProjectId, startTime, endTime); List spotCheckDetailLists = SpotCheckDetailService.GetAllSpotCheckDetailListByTime(CurrUser.LoginProjectId, startTime, endTime); List TotalCheckDetailOKLists = SpotCheckDetailService.GetTotalOKSpotCheckDetailListByTime1(CurrUser.LoginProjectId, endTime); List TotalCheckDetailLists = SpotCheckDetailService.GetTotalAllSpotCheckDetailListByTime(CurrUser.LoginProjectId, endTime); //质量记录本月同步率 List spotCheckDetailDataOKLists = SpotCheckDetailService.GetMonthDataOkSpotCheckDetailListByTime(CurrUser.LoginProjectId, startTime, endTime); //质量记录累计同步率 List TotalCheckDetailDataOKLists = SpotCheckDetailService.GetAllDataOkSpotCheckDetailListByTime(CurrUser.LoginProjectId, endTime); Bookmark bookmarkMonthOkqualificationRate = doc.Range.Bookmarks["MonthOkqualificationRate"]; if (bookmarkMonthOkqualificationRate != null) { decimal result = 12.30M; if (spotCheckDetailOKLists.Count > 0 && spotCheckDetailLists.Count > 0) { var a = Convert.ToDouble(spotCheckDetailOKLists.Count); var b = Convert.ToDouble(spotCheckDetailLists.Count); result = decimal.Round(decimal.Parse((a / b * 100).ToString()), 2); bookmarkMonthOkqualificationRate.Text = result.ToString() + "%" ?? ""; } } Bookmark bookmarkOkqualificationRate = doc.Range.Bookmarks["OkqualificationRate"]; if (bookmarkOkqualificationRate != null) { decimal result = 12.30M; if (TotalCheckDetailOKLists.Count > 0 && TotalCheckDetailLists.Count > 0) { var a = Convert.ToDouble(TotalCheckDetailOKLists.Count); var b = Convert.ToDouble(TotalCheckDetailLists.Count); result = decimal.Round(decimal.Parse((a / b * 100).ToString()), 2); bookmarkOkqualificationRate.Text = result.ToString() + "%" ?? ""; } } Bookmark bookmarkMonthDataOkqualificationRate = doc.Range.Bookmarks["MonthDataOkqualificationRate"]; if (bookmarkMonthDataOkqualificationRate != null) { decimal result = 12.30M; if (spotCheckDetailOKLists.Count > 0 && spotCheckDetailDataOKLists.Count > 0) { var a = Convert.ToDouble(spotCheckDetailDataOKLists.Count); var b = Convert.ToDouble(spotCheckDetailOKLists.Where(x => x.IsDataOK != "2").ToList().Count); result = decimal.Round(decimal.Parse((a / b * 100).ToString()), 2); bookmarkMonthDataOkqualificationRate.Text = result.ToString() + "%" ?? ""; } } Bookmark bookmarkDataOkqualificationRate = doc.Range.Bookmarks["DataOkqualificationRate"]; if (bookmarkDataOkqualificationRate != null) { decimal result = 12.30M; if (TotalCheckDetailOKLists.Count > 0 && TotalCheckDetailDataOKLists.Count > 0) { var a = Convert.ToDouble(TotalCheckDetailDataOKLists.Count); var b = Convert.ToDouble(TotalCheckDetailOKLists.Where(x => x.IsDataOK != "2").ToList().Count); result = decimal.Round(decimal.Parse((a / b * 100).ToString()), 2); bookmarkDataOkqualificationRate.Text = result.ToString() + "%" ?? ""; } } //特种设备安装告知、监检情况 var specialEquipmentDetails = SpecialEquipmentDetailService.GetList(fileId); if (specialEquipmentDetails.Count > 0) { Bookmark bookmarkETotalNum1 = doc.Range.Bookmarks["ETotalNum1"]; if (bookmarkETotalNum1 != null) { bookmarkETotalNum1.Text = specialEquipmentDetails[0].TotalNum; } Bookmark bookmarkThisCompleteNum1 = doc.Range.Bookmarks["ThisCompleteNum1"]; if (bookmarkThisCompleteNum1 != null) { bookmarkThisCompleteNum1.Text = specialEquipmentDetails[0].ThisCompleteNum1; } Bookmark bookmarkTotalCompleteNum1 = doc.Range.Bookmarks["TotalCompleteNum1"]; if (bookmarkTotalCompleteNum1 != null) { bookmarkTotalCompleteNum1.Text = specialEquipmentDetails[0].TotalCompleteNum1; } Bookmark bookmarkTotalRate1 = doc.Range.Bookmarks["TotalRate1"]; if (bookmarkTotalRate1 != null) { bookmarkTotalRate1.Text = specialEquipmentDetails[0].TotalRate1; } Bookmark bookmarkThisCompleteNum6 = doc.Range.Bookmarks["ThisCompleteNum6"]; if (bookmarkThisCompleteNum6 != null) { bookmarkThisCompleteNum6.Text = specialEquipmentDetails[0].ThisCompleteNum2; } Bookmark bookmarkTotalCompleteNum6 = doc.Range.Bookmarks["TotalCompleteNum6"]; if (bookmarkTotalCompleteNum6 != null) { bookmarkTotalCompleteNum6.Text = specialEquipmentDetails[0].TotalCompleteNum2; } Bookmark bookmarkTotalRate6 = doc.Range.Bookmarks["TotalRate6"]; if (bookmarkTotalRate6 != null) { bookmarkTotalRate6.Text = specialEquipmentDetails[0].TotalRate2; } Bookmark bookmarkETotalNum2 = doc.Range.Bookmarks["ETotalNum2"]; if (bookmarkETotalNum2 != null) { bookmarkETotalNum2.Text = specialEquipmentDetails[1].TotalNum; } Bookmark bookmarkThisCompleteNum2 = doc.Range.Bookmarks["ThisCompleteNum2"]; if (bookmarkThisCompleteNum2 != null) { bookmarkThisCompleteNum2.Text = specialEquipmentDetails[1].ThisCompleteNum1; } Bookmark bookmarkTotalCompleteNum2 = doc.Range.Bookmarks["TotalCompleteNum2"]; if (bookmarkTotalCompleteNum2 != null) { bookmarkTotalCompleteNum2.Text = specialEquipmentDetails[1].TotalCompleteNum1; } Bookmark bookmarkTotalRate2 = doc.Range.Bookmarks["TotalRate2"]; if (bookmarkTotalRate2 != null) { bookmarkTotalRate2.Text = specialEquipmentDetails[1].TotalRate1; } Bookmark bookmarkThisCompleteNum7 = doc.Range.Bookmarks["ThisCompleteNum7"]; if (bookmarkThisCompleteNum7 != null) { bookmarkThisCompleteNum7.Text = specialEquipmentDetails[1].ThisCompleteNum2; } Bookmark bookmarkTotalCompleteNum7 = doc.Range.Bookmarks["TotalCompleteNum7"]; if (bookmarkTotalCompleteNum7 != null) { bookmarkTotalCompleteNum7.Text = specialEquipmentDetails[1].TotalCompleteNum2; } Bookmark bookmarkTotalRate7 = doc.Range.Bookmarks["TotalRate7"]; if (bookmarkTotalRate7 != null) { bookmarkTotalRate7.Text = specialEquipmentDetails[1].TotalRate2; } Bookmark bookmarkETotalNum3 = doc.Range.Bookmarks["ETotalNum3"]; if (bookmarkETotalNum3 != null) { bookmarkETotalNum3.Text = specialEquipmentDetails[2].TotalNum; } Bookmark bookmarkThisCompleteNum3 = doc.Range.Bookmarks["ThisCompleteNum3"]; if (bookmarkThisCompleteNum3 != null) { bookmarkThisCompleteNum3.Text = specialEquipmentDetails[2].ThisCompleteNum1; } Bookmark bookmarkTotalCompleteNum3 = doc.Range.Bookmarks["TotalCompleteNum3"]; if (bookmarkTotalCompleteNum3 != null) { bookmarkTotalCompleteNum3.Text = specialEquipmentDetails[2].TotalCompleteNum1; } Bookmark bookmarkTotalRate3 = doc.Range.Bookmarks["TotalRate3"]; if (bookmarkTotalRate3 != null) { bookmarkTotalRate3.Text = specialEquipmentDetails[2].TotalRate1; } Bookmark bookmarkThisCompleteNum8 = doc.Range.Bookmarks["ThisCompleteNum8"]; if (bookmarkThisCompleteNum8 != null) { bookmarkThisCompleteNum8.Text = specialEquipmentDetails[2].ThisCompleteNum2; } Bookmark bookmarkTotalCompleteNum8 = doc.Range.Bookmarks["TotalCompleteNum8"]; if (bookmarkTotalCompleteNum8 != null) { bookmarkTotalCompleteNum8.Text = specialEquipmentDetails[2].TotalCompleteNum2; } Bookmark bookmarkTotalRate8 = doc.Range.Bookmarks["TotalRate8"]; if (bookmarkTotalRate8 != null) { bookmarkTotalRate8.Text = specialEquipmentDetails[2].TotalRate2; } Bookmark bookmarkETotalNum4 = doc.Range.Bookmarks["ETotalNum4"]; if (bookmarkETotalNum4 != null) { bookmarkETotalNum4.Text = specialEquipmentDetails[3].TotalNum; } Bookmark bookmarkThisCompleteNum4 = doc.Range.Bookmarks["ThisCompleteNum4"]; if (bookmarkThisCompleteNum4 != null) { bookmarkThisCompleteNum4.Text = specialEquipmentDetails[3].ThisCompleteNum1; } Bookmark bookmarkTotalCompleteNum4 = doc.Range.Bookmarks["TotalCompleteNum4"]; if (bookmarkTotalCompleteNum4 != null) { bookmarkTotalCompleteNum4.Text = specialEquipmentDetails[3].TotalCompleteNum1; } Bookmark bookmarkTotalRate4 = doc.Range.Bookmarks["TotalRate4"]; if (bookmarkTotalRate4 != null) { bookmarkTotalRate4.Text = specialEquipmentDetails[3].TotalRate1; } Bookmark bookmarkThisCompleteNum9 = doc.Range.Bookmarks["ThisCompleteNum9"]; if (bookmarkThisCompleteNum9 != null) { bookmarkThisCompleteNum9.Text = specialEquipmentDetails[3].ThisCompleteNum2; } Bookmark bookmarkTotalCompleteNum9 = doc.Range.Bookmarks["TotalCompleteNum9"]; if (bookmarkTotalCompleteNum9 != null) { bookmarkTotalCompleteNum9.Text = specialEquipmentDetails[3].TotalCompleteNum2; } Bookmark bookmarkTotalRate9 = doc.Range.Bookmarks["TotalRate9"]; if (bookmarkTotalRate9 != null) { bookmarkTotalRate9.Text = specialEquipmentDetails[3].TotalRate2; } Bookmark bookmarkETotalNum5 = doc.Range.Bookmarks["ETotalNum5"]; if (bookmarkETotalNum5 != null) { bookmarkETotalNum5.Text = specialEquipmentDetails[4].TotalNum; } Bookmark bookmarkThisCompleteNum5 = doc.Range.Bookmarks["ThisCompleteNum5"]; if (bookmarkThisCompleteNum5 != null) { bookmarkThisCompleteNum5.Text = specialEquipmentDetails[4].ThisCompleteNum1; } Bookmark bookmarkTotalCompleteNum5 = doc.Range.Bookmarks["TotalCompleteNum5"]; if (bookmarkTotalCompleteNum5 != null) { bookmarkTotalCompleteNum5.Text = specialEquipmentDetails[4].TotalCompleteNum1; } Bookmark bookmarkTotalRate5 = doc.Range.Bookmarks["TotalRate5"]; if (bookmarkTotalRate5 != null) { bookmarkTotalRate5.Text = specialEquipmentDetails[4].TotalRate1; } Bookmark bookmarkThisCompleteNum10 = doc.Range.Bookmarks["ThisCompleteNum10"]; if (bookmarkThisCompleteNum10 != null) { bookmarkThisCompleteNum10.Text = specialEquipmentDetails[4].ThisCompleteNum2; } Bookmark bookmarkTotalCompleteNum10 = doc.Range.Bookmarks["TotalCompleteNum10"]; if (bookmarkTotalCompleteNum10 != null) { bookmarkTotalCompleteNum10.Text = specialEquipmentDetails[4].TotalCompleteNum2; } Bookmark bookmarkTotalRate10 = doc.Range.Bookmarks["TotalRate10"]; if (bookmarkTotalRate10 != null) { bookmarkTotalRate10.Text = specialEquipmentDetails[4].TotalRate2; } } //设计变更情况 builder.MoveToBookmark("Table4"); builder.StartTable(); //builder.RowFormat. = Aspose.Words.Tables.RowAlignment.Center; builder.CellFormat.Borders.LineStyle = LineStyle.Single; builder.CellFormat.Borders.Color = System.Drawing.Color.Black; //builder.RowFormat.LeftIndent = 5; builder.Bold = false; builder.RowFormat.Height = 20; builder.Bold = false; var designs = from x in Funs.DB.Check_Design where x.ProjectId == CurrUser.LoginProjectId && x.DesignDate >= startTime && x.DesignDate < endTime select x; int num = 1; string mainItemName = string.Empty; string CNProfessionalName = string.Empty; string state = string.Empty; foreach (Model.Check_Design design in designs) { //序号 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 42; builder.Write(num.ToString()); //编号 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 132; builder.Write(design.DesignCode); //主项 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 67; if (!string.IsNullOrEmpty(design.MainItemId)) { var mainItem = MainItemService.GetMainItemByMainItemId(design.MainItemId); if (mainItem != null) { mainItemName = mainItem.MainItemName; } } builder.Write(mainItemName); //专业 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 67; var cn = CNProfessionalService.GetCNProfessional(design.CNProfessionalCode); if (cn != null) { CNProfessionalName = cn.ProfessionalName; } builder.Write(CNProfessionalName); //施工完成情况 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 112; if (design.State == Const.Design_Complete) { state = "已完成"; } else { state = "未完成"; } builder.Write(state); //备注 builder.InsertCell(); builder.CellFormat.VerticalMerge = Aspose.Words.Tables.CellMerge.None; builder.CellFormat.HorizontalMerge = Aspose.Words.Tables.CellMerge.First; builder.CellFormat.VerticalAlignment = Aspose.Words.Tables.CellVerticalAlignment.Center;//垂直居中对齐 builder.ParagraphFormat.Alignment = ParagraphAlignment.Center;//水平居中对齐 builder.CellFormat.Width = 68; builder.Write(string.Empty); builder.EndRow(); num++; } builder.EndTable(); Bookmark bookmarkConstructionData = doc.Range.Bookmarks["ConstructionData"]; if (bookmarkConstructionData != null) { if (!string.IsNullOrEmpty(checkMonth.ConstructionData)) { bookmarkConstructionData.Text = checkMonth.ConstructionData; } } Bookmark bookmarkNextMonthPlan = doc.Range.Bookmarks["NextMonthPlan"]; if (bookmarkNextMonthPlan != null) { if (!string.IsNullOrEmpty(checkMonth.NextMonthPlan)) { bookmarkNextMonthPlan.Text = checkMonth.NextMonthPlan; } } Bookmark bookmarkNeedSolved = doc.Range.Bookmarks["NeedSolved"]; if (bookmarkNeedSolved != null) { if (!string.IsNullOrEmpty(checkMonth.NeedSolved)) { bookmarkNeedSolved.Text = checkMonth.NeedSolved; } } doc.Save(newUrl); //生成PDF文件 string pdfUrl = newUrl.Replace(".doc", ".pdf"); Document doc1 = new Aspose.Words.Document(newUrl); //验证参数 if (doc1 == null) { throw new Exception("Word文件无效"); } doc1.Save(pdfUrl, Aspose.Words.SaveFormat.Pdf);//还可以改成其它格式 string fileName = Path.GetFileName(filePath); FileInfo info = new FileInfo(pdfUrl); 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(pdfUrl, 0, fileSize); Response.Flush(); Response.Close(); File.Delete(newUrl); File.Delete(pdfUrl); } if (e.CommandName.Equals("download")) { string menuId = Const.CheckMonthMenuId; PageContext.RegisterStartupScript(Windowtt.GetShowReference( String.Format("../../AttachFile/webuploader.aspx?type=-1&source=1&toKeyId={0}&path=FileUpload/CheckControl&menuId={1}", fileId, menuId))); } } } }