629 lines
		
	
	
		
			32 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			629 lines
		
	
	
		
			32 KiB
		
	
	
	
		
			C#
		
	
	
	
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;
 | 
						|
using Aspose.Words;
 | 
						|
using BLL;
 | 
						|
using Newtonsoft.Json.Linq;
 | 
						|
 | 
						|
namespace FineUIPro.Web.Personal
 | 
						|
{
 | 
						|
    public partial class PersonCheckInfo : PageBase
 | 
						|
    {
 | 
						|
        #region 加载
 | 
						|
 | 
						|
        protected void Page_Load(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            if (!IsPostBack)
 | 
						|
            {
 | 
						|
                this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString();
 | 
						|
                BindGrid();
 | 
						|
                if (this.CurrUser.UserId == BLL.Const.sysglyId)
 | 
						|
                {
 | 
						|
                    GridColumn columnexport = Grid1.FindColumn("export");
 | 
						|
                    columnexport.Hidden = false;
 | 
						|
                }
 | 
						|
            }
 | 
						|
        }
 | 
						|
        private void BindGrid()
 | 
						|
        {
 | 
						|
            string strSql = @"select QuarterCheckId, QuarterCheckName, C.UserId, C.ProjectId,     
 | 
						|
                            StartTime,EndTime,State,R.RoleName,U.UserName,P.ProjectName from [dbo].[Person_QuarterCheck] C 
 | 
						|
                            left join  Sys_Role R  on C.RoleId=R.RoleId 
 | 
						|
                            left join  Sys_User U  on C.UserId=U.UserId 
 | 
						|
                            left join Base_Project P on C.ProjectId=P.ProjectId where 1=1 ";
 | 
						|
            List<SqlParameter> listStr = new List<SqlParameter>();
 | 
						|
            strSql += " AND C.UserId=@UserId ";
 | 
						|
            listStr.Add(new SqlParameter("@UserId", this.CurrUser.UserId));
 | 
						|
            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();
 | 
						|
        }
 | 
						|
        protected string ConvertApprove(object State)
 | 
						|
        {
 | 
						|
            if (!string.IsNullOrEmpty(State.ToString()))
 | 
						|
            {
 | 
						|
                return State.ToString() == "1" ? "考核结束" : "正在考核";
 | 
						|
            }
 | 
						|
            return "";
 | 
						|
        }
 | 
						|
        protected void btnQuery_Click(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            BindGrid();
 | 
						|
        }
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region 数据操作
 | 
						|
 | 
						|
        protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
 | 
						|
        {
 | 
						|
            btnMenuEdit_Click(null, null);
 | 
						|
        }
 | 
						|
 | 
						|
        protected void btnMenuEdit_Click(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            if (Grid1.SelectedRowIndexArray.Length == 0)
 | 
						|
            {
 | 
						|
                Alert.ShowInParent("请至少选择一条记录!", MessageBoxIcon.Warning);
 | 
						|
                return;
 | 
						|
            }
 | 
						|
            string Id = Grid1.SelectedRowID;
 | 
						|
                PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("../Person/PersonCheckingView.aspx?QuarterCheckId={0}", Id, "编辑 - ")));
 | 
						|
        }
 | 
						|
        protected void Window1_Close(object sender, WindowCloseEventArgs e)
 | 
						|
        {
 | 
						|
            BindGrid();
 | 
						|
        }
 | 
						|
        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 btnMenuDelete_Click(object sender, EventArgs e)
 | 
						|
        {
 | 
						|
            if (Grid1.SelectedRowIndexArray.Length == 0)
 | 
						|
            {
 | 
						|
                Alert.ShowInParent("请至少选择一条记录!", MessageBoxIcon.Warning);
 | 
						|
                return;
 | 
						|
            }
 | 
						|
            string rowID = Grid1.SelectedRowID;
 | 
						|
            var QuarterCheck = BLL.Person_QuarterCheckService.GetPerson_QuarterCheckById(rowID);
 | 
						|
            if (QuarterCheck != null)
 | 
						|
            {
 | 
						|
                var CheckItem = BLL.Person_QuarterCheckItemService.GetCheckItemListById(rowID);
 | 
						|
                if (CheckItem.Count > 0)
 | 
						|
                {
 | 
						|
                    foreach (var item in CheckItem)
 | 
						|
                    {
 | 
						|
                        BLL.Person_QuarterCheckItemService.DeleteCheckItem(item.QuarterCheckItemId);
 | 
						|
                    }
 | 
						|
                }
 | 
						|
                var CheckApprove = BLL.Person_QuarterCheckApproveService.GetCheckApproveListById(rowID);
 | 
						|
                if (CheckApprove.Count > 0)
 | 
						|
                {
 | 
						|
                    foreach (var item in CheckApprove)
 | 
						|
                    {
 | 
						|
                        BLL.Person_QuarterCheckApproveService.DeleteCheckApprove(item.ApproveId);
 | 
						|
                    }
 | 
						|
                }
 | 
						|
                BLL.Person_QuarterCheckService.DeleteQuarterCheck(rowID);
 | 
						|
 | 
						|
 | 
						|
 | 
						|
                BindGrid();
 | 
						|
                ShowNotify("删除数据成功!", MessageBoxIcon.Success);
 | 
						|
            }
 | 
						|
        }
 | 
						|
        #endregion
 | 
						|
 | 
						|
        #region 导出
 | 
						|
 | 
						|
        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 filePath = string.Empty;
 | 
						|
 | 
						|
 | 
						|
                string Id = Grid1.SelectedRowID;
 | 
						|
                var GetQuarterCheck = BLL.Person_QuarterCheckService.GetPerson_QuarterCheckById(Id);
 | 
						|
                if (GetQuarterCheck != null)
 | 
						|
                {
 | 
						|
                    if (GetQuarterCheck.CheckType == "1")
 | 
						|
                    {
 | 
						|
                        initTemplatePath = BLL.Const.ConsturctTemplateUrl;
 | 
						|
                    }
 | 
						|
                    else if (GetQuarterCheck.CheckType == "2")
 | 
						|
                    {
 | 
						|
                        initTemplatePath = BLL.Const.HSSETemplateUrl;
 | 
						|
                    }
 | 
						|
                    else if (GetQuarterCheck.CheckType == "3")
 | 
						|
                    {
 | 
						|
                        initTemplatePath = BLL.Const.QATemplateUrl;
 | 
						|
                    }
 | 
						|
                    else if (GetQuarterCheck.CheckType == "4")
 | 
						|
                    {
 | 
						|
                        initTemplatePath = BLL.Const.TestTemplateUrl;
 | 
						|
                    }
 | 
						|
                    else if (GetQuarterCheck.CheckType == "5")
 | 
						|
                    {
 | 
						|
                        initTemplatePath = BLL.Const.ConsturctEgTemplateUrl;
 | 
						|
                    }
 | 
						|
                    else if (GetQuarterCheck.CheckType == "6")
 | 
						|
                    {
 | 
						|
                        initTemplatePath = BLL.Const.HSSEEgTemplateUrl;
 | 
						|
                    }
 | 
						|
                    else if (GetQuarterCheck.CheckType == "7")
 | 
						|
                    {
 | 
						|
                        initTemplatePath = BLL.Const.QAEgTemplateUrl;
 | 
						|
                    }
 | 
						|
                    else if (GetQuarterCheck.CheckType == "8")
 | 
						|
                    {
 | 
						|
                        initTemplatePath = BLL.Const.TestEgTemplateUrl;
 | 
						|
                    }
 | 
						|
                    else if (GetQuarterCheck.CheckType == "9")
 | 
						|
                    {
 | 
						|
                        initTemplatePath = BLL.Const.SGALLEgTemplateUrl;
 | 
						|
                    }
 | 
						|
                    else if (GetQuarterCheck.CheckType == "10")
 | 
						|
                    {
 | 
						|
                        initTemplatePath = BLL.Const.SGContractEgTemplateUrl;
 | 
						|
                    }
 | 
						|
                    else if (GetQuarterCheck.CheckType == "11")
 | 
						|
                    {
 | 
						|
                        initTemplatePath = BLL.Const.SGHSSEQAEgTemplateUrl;
 | 
						|
                    }
 | 
						|
                    uploadfilepath = rootPath + initTemplatePath;
 | 
						|
                    newUrl = uploadfilepath.Replace(".doc", string.Format("{0:yyyy-MM}", DateTime.Now) + ".doc");
 | 
						|
                    filePath = initTemplatePath.Replace(".doc", string.Format("{0:yyyy-MM}", DateTime.Now) + ".pdf");
 | 
						|
                    File.Copy(uploadfilepath, newUrl);
 | 
						|
                    //更新书签内容
 | 
						|
                    Document doc = new Aspose.Words.Document(newUrl);
 | 
						|
                    Bookmark bookmarkUserName = doc.Range.Bookmarks["UserName"];
 | 
						|
                    if (bookmarkUserName != null)
 | 
						|
                    {
 | 
						|
                        var userName = BLL.UserService.GetUserByUserId(GetQuarterCheck.UserId).UserName;
 | 
						|
                        if (userName != null)
 | 
						|
                        {
 | 
						|
                            bookmarkUserName.Text = userName;
 | 
						|
                        }
 | 
						|
                    }
 | 
						|
                    Bookmark bookmarkProjectName = doc.Range.Bookmarks["ProjectName"];
 | 
						|
                    if (bookmarkProjectName != null)
 | 
						|
                    {
 | 
						|
                        var ProjectName = BLL.ProjectService.GetProjectByProjectId(GetQuarterCheck.ProjectId).ProjectName;
 | 
						|
                        if (ProjectName != null)
 | 
						|
                        {
 | 
						|
                            bookmarkProjectName.Text = ProjectName;
 | 
						|
                        }
 | 
						|
                    }
 | 
						|
                    var GetCheckItemList = Person_QuarterCheckItemService.GetCheckItemListById(GetQuarterCheck.QuarterCheckId);
 | 
						|
                    decimal totalValue = 0;
 | 
						|
                    if (GetCheckItemList.Count > 0)
 | 
						|
                    {
 | 
						|
                        Bookmark bookmarkGrade1 = doc.Range.Bookmarks["Grade1"];
 | 
						|
                        if (bookmarkGrade1 != null)
 | 
						|
                        {
 | 
						|
                            var item = GetCheckItemList.FirstOrDefault(x => x.SortId == 1);
 | 
						|
                            if (item != null)
 | 
						|
                            {
 | 
						|
 | 
						|
                                if (!string.IsNullOrEmpty(item.Grade.ToString()))
 | 
						|
                                {
 | 
						|
                                    var a = Convert.ToDouble(Convert.ToDouble(item.Grade) * (Convert.ToDouble(item.StandardGrade) / 100));
 | 
						|
                                    bookmarkGrade1.Text = (decimal.Round(decimal.Parse(a.ToString()), 1)).ToString();
 | 
						|
                                    totalValue += Convert.ToDecimal(bookmarkGrade1.Text);
 | 
						|
                                }
 | 
						|
 | 
						|
                            }
 | 
						|
                        }
 | 
						|
                        Bookmark bookmarkGrade2 = doc.Range.Bookmarks["Grade2"];
 | 
						|
                        if (bookmarkGrade2 != null)
 | 
						|
                        {
 | 
						|
                            var item = GetCheckItemList.FirstOrDefault(x => x.SortId == 2);
 | 
						|
                            if (item != null)
 | 
						|
                            {
 | 
						|
                                if (!string.IsNullOrEmpty(item.Grade.ToString()))
 | 
						|
                                {
 | 
						|
                                    var a = Convert.ToDouble(Convert.ToDouble(item.Grade) * (Convert.ToDouble(item.StandardGrade) / 100));
 | 
						|
                                    bookmarkGrade2.Text = (decimal.Round(decimal.Parse(a.ToString()), 1)).ToString();
 | 
						|
                                    totalValue += Convert.ToDecimal(bookmarkGrade2.Text);
 | 
						|
                                }
 | 
						|
                            }
 | 
						|
 | 
						|
                        }
 | 
						|
                        Bookmark bookmarkGrade3 = doc.Range.Bookmarks["Grade3"];
 | 
						|
                        if (bookmarkGrade3 != null)
 | 
						|
                        {
 | 
						|
                            var item = GetCheckItemList.FirstOrDefault(x => x.SortId == 3);
 | 
						|
                            if (item != null)
 | 
						|
                            {
 | 
						|
                                if (!string.IsNullOrEmpty(item.Grade.ToString()))
 | 
						|
                                {
 | 
						|
                                    var a = Convert.ToDouble(Convert.ToDouble(item.Grade) * (Convert.ToDouble(item.StandardGrade) / 100));
 | 
						|
                                    bookmarkGrade3.Text = (decimal.Round(decimal.Parse(a.ToString()), 1)).ToString();
 | 
						|
                                    totalValue += Convert.ToDecimal(bookmarkGrade3.Text);
 | 
						|
                                }
 | 
						|
                            }
 | 
						|
 | 
						|
                        }
 | 
						|
                        Bookmark bookmarkGrade4 = doc.Range.Bookmarks["Grade4"];
 | 
						|
                        if (bookmarkGrade4 != null)
 | 
						|
                        {
 | 
						|
                            var item = GetCheckItemList.FirstOrDefault(x => x.SortId == 4);
 | 
						|
                            if (item != null)
 | 
						|
                            {
 | 
						|
                                if (!string.IsNullOrEmpty(item.Grade.ToString()))
 | 
						|
                                {
 | 
						|
                                    var a = Convert.ToDouble(Convert.ToDouble(item.Grade) * (Convert.ToDouble(item.StandardGrade) / 100));
 | 
						|
                                    bookmarkGrade4.Text = (decimal.Round(decimal.Parse(a.ToString()), 1)).ToString();
 | 
						|
                                    totalValue += Convert.ToDecimal(bookmarkGrade4.Text);
 | 
						|
                                }
 | 
						|
                            }
 | 
						|
 | 
						|
                        }
 | 
						|
                        Bookmark bookmarkGrade5 = doc.Range.Bookmarks["Grade5"];
 | 
						|
                        if (bookmarkGrade5 != null)
 | 
						|
                        {
 | 
						|
                            var item = GetCheckItemList.FirstOrDefault(x => x.SortId == 5);
 | 
						|
                            if (item != null)
 | 
						|
                            {
 | 
						|
                                if (!string.IsNullOrEmpty(item.Grade.ToString()))
 | 
						|
                                {
 | 
						|
                                    var a = Convert.ToDouble(Convert.ToDouble(item.Grade) * (Convert.ToDouble(item.StandardGrade) / 100));
 | 
						|
                                    bookmarkGrade5.Text = (decimal.Round(decimal.Parse(a.ToString()), 1)).ToString();
 | 
						|
                                    totalValue += Convert.ToDecimal(bookmarkGrade5.Text);
 | 
						|
                                }
 | 
						|
                            }
 | 
						|
 | 
						|
                        }
 | 
						|
                        Bookmark bookmarkGrade6 = doc.Range.Bookmarks["Grade6"];
 | 
						|
                        if (bookmarkGrade6 != null)
 | 
						|
                        {
 | 
						|
                            var item = GetCheckItemList.FirstOrDefault(x => x.SortId == 6);
 | 
						|
                            if (item != null)
 | 
						|
                            {
 | 
						|
                                if (!string.IsNullOrEmpty(item.Grade.ToString()))
 | 
						|
                                {
 | 
						|
                                    var a = Convert.ToDouble(Convert.ToDouble(item.Grade) * (Convert.ToDouble(item.StandardGrade) / 100));
 | 
						|
                                    bookmarkGrade6.Text = (decimal.Round(decimal.Parse(a.ToString()), 1)).ToString();
 | 
						|
                                    totalValue += Convert.ToDecimal(bookmarkGrade6.Text);
 | 
						|
                                }
 | 
						|
                            }
 | 
						|
 | 
						|
                        }
 | 
						|
                        Bookmark bookmarkGrade7 = doc.Range.Bookmarks["Grade7"];
 | 
						|
                        if (bookmarkGrade7 != null)
 | 
						|
                        {
 | 
						|
                            var item = GetCheckItemList.FirstOrDefault(x => x.SortId == 7);
 | 
						|
                            if (item != null)
 | 
						|
                            {
 | 
						|
                                if (!string.IsNullOrEmpty(item.Grade.ToString()))
 | 
						|
                                {
 | 
						|
                                    var a = Convert.ToDouble(Convert.ToDouble(item.Grade) * (Convert.ToDouble(item.StandardGrade) / 100));
 | 
						|
                                    bookmarkGrade7.Text = (decimal.Round(decimal.Parse(a.ToString()), 1)).ToString();
 | 
						|
                                    totalValue += Convert.ToDecimal(bookmarkGrade7.Text);
 | 
						|
                                }
 | 
						|
                            }
 | 
						|
 | 
						|
                        }
 | 
						|
                        Bookmark bookmarkGrade8 = doc.Range.Bookmarks["Grade8"];
 | 
						|
                        if (bookmarkGrade1 != null)
 | 
						|
                        {
 | 
						|
                            var item = GetCheckItemList.FirstOrDefault(x => x.SortId == 8);
 | 
						|
                            if (item != null)
 | 
						|
                            {
 | 
						|
                                if (!string.IsNullOrEmpty(item.Grade.ToString()))
 | 
						|
                                {
 | 
						|
                                    var a = Convert.ToDouble(Convert.ToDouble(item.Grade) * (Convert.ToDouble(item.StandardGrade) / 100));
 | 
						|
                                    bookmarkGrade8.Text = (decimal.Round(decimal.Parse(a.ToString()), 1)).ToString();
 | 
						|
                                    totalValue += Convert.ToDecimal(bookmarkGrade8.Text);
 | 
						|
                                }
 | 
						|
                            }
 | 
						|
 | 
						|
                        }
 | 
						|
                        Bookmark bookmarkGrade9 = doc.Range.Bookmarks["Grade9"];
 | 
						|
                        if (bookmarkGrade9 != null)
 | 
						|
                        {
 | 
						|
                            var item = GetCheckItemList.FirstOrDefault(x => x.SortId == 9);
 | 
						|
                            if (item != null)
 | 
						|
                            {
 | 
						|
                                if (!string.IsNullOrEmpty(item.Grade.ToString()))
 | 
						|
                                {
 | 
						|
                                    var a = Convert.ToDouble(Convert.ToDouble(item.Grade) * (Convert.ToDouble(item.StandardGrade) / 100));
 | 
						|
                                    bookmarkGrade9.Text = (decimal.Round(decimal.Parse(a.ToString()), 1)).ToString();
 | 
						|
                                    totalValue += Convert.ToDecimal(bookmarkGrade9.Text);
 | 
						|
                                }
 | 
						|
                            }
 | 
						|
 | 
						|
                        }
 | 
						|
                        Bookmark bookmarkGrade10 = doc.Range.Bookmarks["Grade10"];
 | 
						|
                        if (bookmarkGrade10 != null)
 | 
						|
                        {
 | 
						|
                            var item = GetCheckItemList.FirstOrDefault(x => x.SortId == 10);
 | 
						|
                            if (item != null)
 | 
						|
                            {
 | 
						|
                                if (!string.IsNullOrEmpty(item.Grade.ToString()))
 | 
						|
                                {
 | 
						|
                                    var a = Convert.ToDouble(Convert.ToDouble(item.Grade) * (Convert.ToDouble(item.StandardGrade) / 100));
 | 
						|
                                    bookmarkGrade10.Text = (decimal.Round(decimal.Parse(a.ToString()), 1)).ToString();
 | 
						|
                                    totalValue += Convert.ToDecimal(bookmarkGrade10.Text);
 | 
						|
                                }
 | 
						|
                            }
 | 
						|
 | 
						|
                        }
 | 
						|
 | 
						|
 | 
						|
                        Bookmark bookmarkGradeTotal = doc.Range.Bookmarks["GradeTotal"];
 | 
						|
                        if (bookmarkGradeTotal != null)
 | 
						|
                        {
 | 
						|
 | 
						|
                            bookmarkGradeTotal.Text = totalValue.ToString();
 | 
						|
 | 
						|
                        }
 | 
						|
                        var approves = Person_QuarterCheckApproveService.GetCheckApproveListById(GetQuarterCheck.QuarterCheckId);
 | 
						|
                        foreach (var approve in approves)
 | 
						|
                        {
 | 
						|
                            var projectUser = ProjectUserService.GetProjectUserByUserIdProjectId(GetQuarterCheck.ProjectId, approve.UserId);
 | 
						|
                            if (projectUser != null)
 | 
						|
                            {
 | 
						|
                                if (projectUser.RoleId == BLL.Const.ConstructionManager)
 | 
						|
                                {
 | 
						|
                                    if (approve.ApproveDate != null)
 | 
						|
                                    {
 | 
						|
                                        Bookmark ConstructUser = doc.Range.Bookmarks["ConstructUser"];
 | 
						|
                                        if (ConstructUser != null)
 | 
						|
                                        {
 | 
						|
                                            var user = BLL.UserService.GetUserByUserId(approve.UserId);
 | 
						|
                                            if (!string.IsNullOrEmpty(user.SignatureUrl))
 | 
						|
                                            {
 | 
						|
                                                var file = user.SignatureUrl;
 | 
						|
                                                if (!string.IsNullOrWhiteSpace(file))
 | 
						|
                                                {
 | 
						|
                                                    string url = rootPath + file;
 | 
						|
                                                    DocumentBuilder builders = new DocumentBuilder(doc);
 | 
						|
                                                    builders.MoveToBookmark("ConstructUser");
 | 
						|
                                                    builders.InsertImage(url, 100, 20);
 | 
						|
                                                }
 | 
						|
                                            }
 | 
						|
                                            else
 | 
						|
                                            {
 | 
						|
                                                ConstructUser.Text = user.UserName;
 | 
						|
                                            }
 | 
						|
                                        }
 | 
						|
                                        Bookmark ConstructDate = doc.Range.Bookmarks["ConstructDate"];
 | 
						|
                                        if (ConstructDate != null)
 | 
						|
                                        {
 | 
						|
                                            ConstructDate.Text = string.Format("{0:yyyy-MM-dd}", approve.ApproveDate);
 | 
						|
                                        }
 | 
						|
                                    }
 | 
						|
 | 
						|
 | 
						|
                                }
 | 
						|
                                else if (projectUser.RoleId == BLL.Const.ProjectManager)
 | 
						|
                                {
 | 
						|
                                    if (approve.ApproveDate != null)
 | 
						|
                                    {
 | 
						|
                                        Bookmark ProjectUser = doc.Range.Bookmarks["ProjectUser"];
 | 
						|
                                        if (ProjectUser != null)
 | 
						|
                                        {
 | 
						|
                                            var user = BLL.UserService.GetUserByUserId(approve.UserId);
 | 
						|
                                            if (!string.IsNullOrEmpty(user.SignatureUrl))
 | 
						|
                                            {
 | 
						|
                                                var file = user.SignatureUrl;
 | 
						|
                                                if (!string.IsNullOrWhiteSpace(file))
 | 
						|
                                                {
 | 
						|
                                                    string url = rootPath + file;
 | 
						|
                                                    DocumentBuilder builders = new DocumentBuilder(doc);
 | 
						|
                                                    builders.MoveToBookmark("ProjectUser");
 | 
						|
                                                    builders.InsertImage(url, 100, 20);
 | 
						|
                                                }
 | 
						|
                                            }
 | 
						|
                                            else
 | 
						|
                                            {
 | 
						|
                                                ProjectUser.Text = user.UserName;
 | 
						|
                                            }
 | 
						|
                                        }
 | 
						|
                                        Bookmark ProjectDate = doc.Range.Bookmarks["ProjectDate"];
 | 
						|
                                        if (ProjectDate != null)
 | 
						|
                                        {
 | 
						|
                                            ProjectDate.Text = string.Format("{0:yyyy-MM-dd}", approve.ApproveDate);
 | 
						|
                                        }
 | 
						|
                                    }
 | 
						|
                                }
 | 
						|
                                else if (projectUser.RoleId == BLL.Const.HSSEManager)
 | 
						|
                                {
 | 
						|
                                    if (approve.ApproveDate != null)
 | 
						|
                                    {
 | 
						|
 | 
						|
 | 
						|
                                        Bookmark HSSEUser = doc.Range.Bookmarks["HSSEUser"];
 | 
						|
                                        if (HSSEUser != null)
 | 
						|
                                        {
 | 
						|
                                            var user = BLL.UserService.GetUserByUserId(approve.UserId);
 | 
						|
                                            if (!string.IsNullOrEmpty(user.SignatureUrl))
 | 
						|
                                            {
 | 
						|
                                                var file = user.SignatureUrl;
 | 
						|
                                                if (!string.IsNullOrWhiteSpace(file))
 | 
						|
                                                {
 | 
						|
                                                    string url = rootPath + file;
 | 
						|
                                                    DocumentBuilder builders = new DocumentBuilder(doc);
 | 
						|
                                                    builders.MoveToBookmark("HSSEUser");
 | 
						|
                                                    builders.InsertImage(url, 100, 20);
 | 
						|
                                                }
 | 
						|
                                            }
 | 
						|
                                            else
 | 
						|
                                            {
 | 
						|
                                                HSSEUser.Text = user.UserName;
 | 
						|
                                            }
 | 
						|
                                        }
 | 
						|
                                        Bookmark HSSEDate = doc.Range.Bookmarks["HSSEDate"];
 | 
						|
                                        if (HSSEDate != null)
 | 
						|
                                        {
 | 
						|
                                            HSSEDate.Text = string.Format("{0:yyyy-MM-dd}", approve.ApproveDate);
 | 
						|
                                        }
 | 
						|
                                    }
 | 
						|
                                }
 | 
						|
                                else if (projectUser.RoleId == BLL.Const.QAManager)
 | 
						|
                                {
 | 
						|
                                    if (approve.ApproveDate != null)
 | 
						|
                                    {
 | 
						|
 | 
						|
 | 
						|
                                        Bookmark QAUser = doc.Range.Bookmarks["QAUser"];
 | 
						|
                                        if (QAUser != null)
 | 
						|
                                        {
 | 
						|
                                            var user = BLL.UserService.GetUserByUserId(approve.UserId);
 | 
						|
                                            if (!string.IsNullOrEmpty(user.SignatureUrl))
 | 
						|
                                            {
 | 
						|
                                                var file = user.SignatureUrl;
 | 
						|
                                                if (!string.IsNullOrWhiteSpace(file))
 | 
						|
                                                {
 | 
						|
                                                    string url = rootPath + file;
 | 
						|
                                                    DocumentBuilder builders = new DocumentBuilder(doc);
 | 
						|
                                                    builders.MoveToBookmark("QAUser");
 | 
						|
                                                    builders.InsertImage(url, 100, 20);
 | 
						|
                                                }
 | 
						|
                                            }
 | 
						|
                                            else
 | 
						|
                                            {
 | 
						|
                                                QAUser.Text = user.UserName;
 | 
						|
                                            }
 | 
						|
                                        }
 | 
						|
                                        Bookmark QADate = doc.Range.Bookmarks["QADate"];
 | 
						|
                                        if (QADate != null)
 | 
						|
                                        {
 | 
						|
                                            QADate.Text = string.Format("{0:yyyy-MM-dd}", approve.ApproveDate);
 | 
						|
                                        }
 | 
						|
                                    }
 | 
						|
                                }
 | 
						|
                                else if (projectUser.RoleId == BLL.Const.TestManager)
 | 
						|
                                {
 | 
						|
                                    if (approve.ApproveDate != null)
 | 
						|
                                    {
 | 
						|
                                        Bookmark TestUser = doc.Range.Bookmarks["TestUser"];
 | 
						|
                                        if (TestUser != null)
 | 
						|
                                        {
 | 
						|
                                            var user = BLL.UserService.GetUserByUserId(approve.UserId);
 | 
						|
                                            if (!string.IsNullOrEmpty(user.SignatureUrl))
 | 
						|
                                            {
 | 
						|
                                                var file = user.SignatureUrl;
 | 
						|
                                                if (!string.IsNullOrWhiteSpace(file))
 | 
						|
                                                {
 | 
						|
                                                    string url = rootPath + file;
 | 
						|
                                                    DocumentBuilder builders = new DocumentBuilder(doc);
 | 
						|
                                                    builders.MoveToBookmark("TestUser");
 | 
						|
                                                    builders.InsertImage(url, 100, 20);
 | 
						|
                                                }
 | 
						|
                                            }
 | 
						|
                                            else
 | 
						|
                                            {
 | 
						|
                                                TestUser.Text = user.UserName;
 | 
						|
                                            }
 | 
						|
                                        }
 | 
						|
                                        Bookmark TestDate = doc.Range.Bookmarks["TestDate"];
 | 
						|
                                        if (TestDate != null)
 | 
						|
                                        {
 | 
						|
                                            TestDate.Text = string.Format("{0:yyyy-MM-dd}", approve.ApproveDate);
 | 
						|
                                        }
 | 
						|
                                    }
 | 
						|
                                }
 | 
						|
                            }
 | 
						|
                            else
 | 
						|
                            {
 | 
						|
                                var SGUser = UserService.GetUserByUserId(BLL.Const.SGGLB);
 | 
						|
                                if (approve.UserId == SGUser.UserId)
 | 
						|
                                {
 | 
						|
                                    if (approve.ApproveDate != null)
 | 
						|
                                    {
 | 
						|
 | 
						|
 | 
						|
                                        Bookmark SGGLUser = doc.Range.Bookmarks["SGUser"];
 | 
						|
                                        if (SGGLUser != null)
 | 
						|
                                        {
 | 
						|
                                            var user = BLL.UserService.GetUserByUserId(approve.UserId);
 | 
						|
                                            if (!string.IsNullOrEmpty(user.SignatureUrl))
 | 
						|
                                            {
 | 
						|
                                                var file = user.SignatureUrl;
 | 
						|
                                                if (!string.IsNullOrWhiteSpace(file))
 | 
						|
                                                {
 | 
						|
                                                    string url = rootPath + file;
 | 
						|
                                                    DocumentBuilder builders = new DocumentBuilder(doc);
 | 
						|
                                                    builders.MoveToBookmark("SGUser");
 | 
						|
                                                    builders.InsertImage(url, 100, 20);
 | 
						|
                                                }
 | 
						|
                                            }
 | 
						|
                                            else
 | 
						|
                                            {
 | 
						|
                                                SGGLUser.Text = user.UserName;
 | 
						|
                                            }
 | 
						|
                                        }
 | 
						|
                                        Bookmark SGDate = doc.Range.Bookmarks["SGDate"];
 | 
						|
                                        if (SGDate != null)
 | 
						|
                                        {
 | 
						|
                                            SGDate.Text = string.Format("{0:yyyy-MM-dd}", approve.ApproveDate);
 | 
						|
                                        }
 | 
						|
                                    }
 | 
						|
                                }
 | 
						|
                            }
 | 
						|
                        }
 | 
						|
                        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);
 | 
						|
                    }
 | 
						|
                }
 | 
						|
            }
 | 
						|
        }
 | 
						|
 | 
						|
        #endregion
 | 
						|
 | 
						|
        protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
 | 
						|
        {
 | 
						|
            BindGrid();
 | 
						|
        }
 | 
						|
    }
 | 
						|
} |