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();
|
|||
|
}
|
|||
|
}
|
|||
|
}
|