YZ_BSF/HJGL/FineUIPro.Web/WeldingProcess/TrustManage/TrustBatchManage.aspx.cs

862 lines
38 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.IO;
//using NPOI.XSSF.UserModel;
using NPOI.HSSF.UserModel;
using BLL;
namespace FineUIPro.Web.WeldingProcess.TrustManage
{
public partial class TrustBatchManage : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.txtTrustDateMonth.Text = string.Format("{0:yyyy-MM}", DateTime.Now);
this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString();
BLL.Base_UnitService.InitProjectUnitDropDownList(this.drpNDEUnit, false, this.CurrUser.LoginProjectId, BLL.Const.UnitType_4, Resources.Lan.PleaseSelect);
// 如项目只有一个检测单位则默认
var ndeUnit = from x in Funs.DB.Project_Unit where x.ProjectId == CurrUser.LoginProjectId && x.UnitType.Contains(Const.UnitType_4) select x;
if (ndeUnit.Count() == 1)
{
drpNDEUnit.SelectedValue = ndeUnit.First().UnitId;
}
BindDayByYearMonth(this.txtTrustDateMonth.Text.Trim());
this.InitTreeMenu();//加载树
}
}
#region -
/// <summary>
/// 加载树
/// </summary>
private void InitTreeMenu()
{
if (!string.IsNullOrEmpty(this.txtTrustDateMonth.Text.Trim()))
{
DateTime startTime = Convert.ToDateTime(this.txtTrustDateMonth.Text.Trim() + "-01");
DateTime endTime = startTime.AddMonths(1);
this.tvControlItem.Nodes.Clear();
Model.HJGLDB db = Funs.DB;
var unitList = (from x in db.Project_WorkArea
where x.ProjectId == this.CurrUser.LoginProjectId
select x.UnitId).Distinct();
var units = from x in unitList
join y in db.Base_Unit on x equals y.UnitId
select new { UnitId = x, y.UnitName };
Model.Project_Unit pUnit = BLL.Project_UnitService.GetProject_UnitByProjectIdUnitId(this.CurrUser.LoginProjectId, this.CurrUser.UnitId);
if (pUnit == null || pUnit.UnitType == BLL.Const.UnitType_1 || pUnit.UnitType == BLL.Const.UnitType_2
|| pUnit.UnitType == BLL.Const.UnitType_3 || pUnit.UnitType == BLL.Const.UnitType_4)
{
}
else
{
units = units.Where(x => x.UnitId == CurrUser.UnitId);
}
if (units != null)
{
foreach (var unit in units)
{
TreeNode newNode = new TreeNode();//定义根节点
newNode.Text = unit.UnitName;
newNode.NodeID = unit.UnitId;
newNode.Expanded = true;
newNode.ToolTip = "Unit";
this.tvControlItem.Nodes.Add(newNode);
this.BindNodes(newNode, startTime, endTime);
}
}
else
{
Alert.ShowInTop(Resources.Lan.PleaseAddUnitFirst, MessageBoxIcon.Warning);
}
}
else
{
Alert.ShowInTop(Resources.Lan.PleaseSelectTrustMonth, MessageBoxIcon.Warning);
}
}
#endregion
#region
/// <summary>
/// 绑定树节点
/// </summary>
/// <param name="node"></param>
private void BindNodes(TreeNode node, DateTime startTime, DateTime endTime)
{
if (node.ToolTip == "Unit")
{
///装置
var install = (from x in Funs.DB.Project_Installation
join y in Funs.DB.Batch_BatchTrust on x.InstallationId equals y.InstallationId
where y.UnitId == node.NodeID && x.ProjectId == this.CurrUser.LoginProjectId
orderby x.InstallationCode
select x).Distinct();
foreach (var q in install)
{
TreeNode newNode = new TreeNode();
newNode.Text = q.InstallationName;
newNode.NodeID = q.InstallationId.ToString() + "|" + node.NodeID;
newNode.ToolTip = "Installation";
node.Nodes.Add(newNode);
BindNodes(newNode, startTime, endTime);
}
}
else if (node.ToolTip == "Installation")
{
var types = (from x in Funs.DB.View_Batch_BatchTrust
join y in Funs.DB.Base_DetectionType
on x.DetectionTypeId equals y.DetectionTypeId
where x.UnitId == node.ParentNode.NodeID && x.ProjectId == this.CurrUser.LoginProjectId
&& x.InstallationId == node.NodeID.Split('|')[0]
orderby x.DetectionTypeCode
select y).Distinct();
foreach (var q in types)
{
TreeNode newNode = new TreeNode();
newNode.Text = q.DetectionTypeCode;
newNode.NodeID = q.DetectionTypeId + "|" + node.NodeID;
newNode.ToolTip = "DetectionType";
newNode.EnableExpandEvent = true;
node.Nodes.Add(newNode);
BindNodes(newNode, startTime, endTime);
}
}
else if (node.ToolTip == "DetectionType")
{
TreeNode newNode = new TreeNode();
newNode.Text = "加载...";
newNode.NodeID = "加载...";
node.Nodes.Add(newNode);
///单号
//var trusts = from x in Funs.DB.Batch_BatchTrust
// where x.TrustDate < Convert.ToDateTime(this.txtTrustDateMonth.Text.Trim() + "-01").AddMonths(1)
// && x.TrustDate >= Convert.ToDateTime(this.txtTrustDateMonth.Text.Trim() + "-01")
// && x.ProjectId == this.CurrUser.LoginProjectId && x.TrustBatchCode.Contains(this.txtSearchCode.Text.Trim())
// && x.InstallationId.ToString() == node.ParentNode.NodeID.Split('|')[0]
// && x.UnitId == node.ParentNode.ParentNode.NodeID
// && x.DetectionTypeId == node.NodeID.Split('|')[0]
// orderby x.TrustBatchCode descending
// select x;
//if (drpSelectDay.SelectedValue != Const._Null && !string.IsNullOrEmpty(drpSelectDay.SelectedValue))
//{
// trusts = from x in trusts
// where x.TrustDate >= Convert.ToDateTime(this.txtTrustDateMonth.Text.Trim() + "-" + drpSelectDay.SelectedValue)
// && x.TrustDate < Convert.ToDateTime(this.txtTrustDateMonth.Text.Trim() + "-" + drpSelectDay.SelectedValue).AddDays(1)
// orderby x.TrustBatchCode descending
// select x;
//}
//foreach (var trust in trusts)
//{
// TreeNode newNode = new TreeNode();
// if (string.Format("{0:yyyy-MM-dd}", trust.TrustDate) == string.Format("{0:yyyy-MM-dd}", System.DateTime.Now))
// {
// newNode.Text = "<font color='#EE0000'>" + trust.TrustBatchCode + "</font>";
// newNode.ToolTip = "当天委托单";
// }
// else
// {
// newNode.Text = trust.TrustBatchCode;
// newNode.ToolTip = "非当天委托单";
// }
// newNode.NodeID = trust.TrustBatchId;
// newNode.EnableClickEvent = true;
// node.Nodes.Add(newNode);
//}
}
}
#endregion
protected void tvControlItem_TreeNodeExpanded(object sender, TreeNodeEventArgs e)
{
if (e.Node.ToolTip == "DetectionType")
{
e.Node.Nodes.Clear();
// 单号
var trusts = from x in Funs.DB.Batch_BatchTrust
where x.TrustDate < Convert.ToDateTime(this.txtTrustDateMonth.Text.Trim() + "-01").AddMonths(1)
&& x.TrustDate >= Convert.ToDateTime(this.txtTrustDateMonth.Text.Trim() + "-01")
&& x.ProjectId == this.CurrUser.LoginProjectId && x.TrustBatchCode.Contains(this.txtSearchCode.Text.Trim())
&& x.InstallationId.ToString() == e.Node.ParentNode.NodeID.Split('|')[0]
&& x.UnitId == e.Node.ParentNode.ParentNode.NodeID
&& x.DetectionTypeId == e.Node.NodeID.Split('|')[0]
orderby x.TrustBatchCode descending
select x;
if (drpSelectDay.SelectedValue != Const._Null && !string.IsNullOrEmpty(drpSelectDay.SelectedValue))
{
trusts = from x in trusts
where x.TrustDate >= Convert.ToDateTime(this.txtTrustDateMonth.Text.Trim() + "-" + drpSelectDay.SelectedValue)
&& x.TrustDate < Convert.ToDateTime(this.txtTrustDateMonth.Text.Trim() + "-" + drpSelectDay.SelectedValue).AddDays(1)
orderby x.TrustBatchCode descending
select x;
}
foreach (var trust in trusts)
{
TreeNode newNode = new TreeNode();
if (string.Format("{0:yyyy-MM-dd}", trust.TrustDate) == string.Format("{0:yyyy-MM-dd}", System.DateTime.Now))
{
newNode.Text = "<font color='#EE0000'>" + trust.TrustBatchCode + "</font>";
newNode.ToolTip = "当天委托单";
}
else
{
newNode.Text = trust.TrustBatchCode;
newNode.ToolTip = "非当天委托单";
}
newNode.NodeID = trust.TrustBatchId;
newNode.EnableClickEvent = true;
e.Node.Nodes.Add(newNode);
}
}
}
private void BindDayByYearMonth(string yearMonth)
{
DateTime beginTime = DateTime.Parse(yearMonth + "-01");//本月初
DateTime endTime = DateTime.Parse(beginTime.AddMonths(1).AddDays(-1).ToShortDateString());//本月最后一天
List<string> dateList = new List<string>();
for (DateTime dt = beginTime; dt <= endTime; dt = dt.AddDays(1))
{
dateList.Add(dt.Day.ToString());
}
drpSelectDay.DataValueField = dateList.ToString();
drpSelectDay.DataTextField = dateList.ToString();
drpSelectDay.DataSource = dateList;
drpSelectDay.DataBind();
Funs.FineUIPleaseSelect(drpSelectDay, Resources.Lan.PleaseSelect);
}
#region TreeView
/// <summary>
/// 点击TreeView
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void tvControlItem_NodeCommand(object sender, TreeCommandEventArgs e)
{
Model.View_Batch_BatchTrust trust = BLL.Batch_BatchTrustService.GetBatchTrustViewById(this.tvControlItem.SelectedNodeID);
if (trust != null)
{
string ndtType = trust.DetectionTypeId;
var s = BLL.Project_TestStandardService.GetProjectTestStandard(this.CurrUser.LoginProjectId, ndtType);
if (s != null && !string.IsNullOrEmpty(s.TestStandardNames))
{
var testS = s.TestStandardNames.Split(',');
ListItem[] list = new ListItem[testS.Length];
int i = 0;
foreach (string t in testS)
{
list[i] = new ListItem(t, t);
i++;
}
drpTestStandard.Items.Clear();
drpTestStandard.DataValueField = "Value";
drpTestStandard.DataTextField = "Text";
drpTestStandard.DataSource = list;
drpTestStandard.DataBind();
}
this.txtTrustBatchCode.Text = trust.TrustBatchCode;
if (trust.TrustDate != null)
{
this.txtTrustDate.Text = string.Format("{0:yyyy-MM-dd}", trust.TrustDate);
}
this.txtDetectionTypeCode.Text = trust.DetectionTypeCode;
if (trust.NDEUuit != null)
{
drpNDEUnit.SelectedValue = trust.NDEUuit;
}
else
{
var ndeUnit = from x in Funs.DB.Project_Unit where x.ProjectId == CurrUser.LoginProjectId && x.UnitType.Contains(Const.UnitType_4) select x;
if (ndeUnit.Count() == 1)
{
drpNDEUnit.SelectedValue = ndeUnit.First().UnitId;
BLL.Batch_BatchTrustService.BatchTrustNDEUnit(this.tvControlItem.SelectedNodeID, ndeUnit.First().UnitId);
}
}
if (trust.TestStandard != null)
{
string[] names = trust.TestStandard.Split(',');
drpTestStandard.SelectedValueArray = names;
}
else
{
if (s != null && !string.IsNullOrEmpty(s.TestStandardNames))
{
string[] testS = s.TestStandardNames.Split(',');
if (testS.Length == 1)
{
BLL.Batch_BatchTrustService.BatchTrustTestStandard(this.tvControlItem.SelectedNodeID, testS[0]);
}
}
}
}
this.BindGrid();
}
#endregion
#region
/// <summary>
/// 数据绑定
/// </summary>
private void BindGrid()
{
if (this.tvControlItem.SelectedNode != null)
{
string strSql = @"SELECT * FROM dbo.View_Batch_BatchTrustItem d WHERE TrustBatchId=@TrustBatchId ";
List<SqlParameter> listStr = new List<SqlParameter>
{
};
listStr.Add(new SqlParameter("@TrustBatchId", this.tvControlItem.SelectedNodeID));
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
// 2.获取当前分页数据
//var table = this.GetPagedDataTable(Grid1, tb1);
Grid1.RecordCount = tb.Rows.Count;
tb = GetFilteredTable(Grid1.FilteredData, tb);
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
}
}
#endregion
#region
#region
/// <summary>
/// 页索引改变事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
BindGrid();
}
#endregion
#region
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_Sort(object sender, GridSortEventArgs e)
{
BindGrid();
}
#endregion
#region
/// <summary>
/// 分页选择下拉改变事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
{
Grid1.PageSize = Convert.ToInt32(ddlPageSize.SelectedValue);
BindGrid();
}
#endregion
#endregion
#region
/// <summary>
/// 关闭弹出窗口
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Window1_Close(object sender, WindowCloseEventArgs e)
{
this.InitTreeMenu();//加载树
this.BindGrid();
}
protected void Window2_Close(object sender, WindowCloseEventArgs e)
{
this.BindGrid();
}
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
{
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_BatchTrustMenuId, Const.BtnCancelTrust))
{
string trustBatchItemId = Grid1.SelectedRowID;
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInParent("请至少选择一条记录!");
return;
}
PageContext.RegisterStartupScript(Window2.GetShowReference(String.Format("CancelTrust.aspx?trustBatchItemId={0}", trustBatchItemId, "编辑 - ")));
//var ndeItem = BLL.Batch_NDEItemService.GetNDEItemByTrustItemId(trustBatchItemId);
//if (ndeItem == null)
//{
// PageContext.RegisterStartupScript(Window2.GetShowReference(String.Format("CancelTrust.aspx?trustBatchItemId={0}", trustBatchItemId, "编辑 - ")));
//}
//else
//{
// Alert.ShowInParent("已检测,不能取消!");
// return;
//}
}
else
{
ShowNotify(Resources.Lan.NoPrivilegePrompt, MessageBoxIcon.Warning);
return;
}
}
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void TextBox_TextChanged(object sender, EventArgs e)
{
this.BindGrid();
}
/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Tree_TextChanged(object sender, EventArgs e)
{
BindDayByYearMonth(this.txtTrustDateMonth.Text.Trim());
this.InitTreeMenu();
this.BindGrid();
}
protected void drpSelect_OnSelectedIndexChanged(object sender, EventArgs e)
{
this.InitTreeMenu();
this.BindGrid();
}
#endregion
protected void btnSave_Click(object sender, EventArgs e)
{
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_BatchTrustMenuId, Const.BtnSave))
{
if (this.tvControlItem.SelectedNode != null)
{
string trustBatchId = this.tvControlItem.SelectedNodeID;
if (drpNDEUnit.SelectedValue != null)
{
string ndtUnit = drpNDEUnit.SelectedValue;
BLL.Batch_BatchTrustService.BatchTrustNDEUnit(trustBatchId, ndtUnit);
}
if (drpTestStandard.SelectedValueArray.Length > 0)
{
string testStandard = string.Join(",", drpTestStandard.SelectedValueArray);
BLL.Batch_BatchTrustService.BatchTrustTestStandard(trustBatchId, testStandard);
}
ShowNotify(Resources.Lan.SaveSuccessfully, MessageBoxIcon.Success);
}
}
else
{
ShowNotify(Resources.Lan.NoPrivilegePrompt, MessageBoxIcon.Warning);
return;
}
}
protected void btnDelete_Click(object sender, EventArgs e)
{
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_BatchTrustMenuId, Const.BtnDelete))
{
Model.HJGLDB db = Funs.DB;
if (!string.IsNullOrEmpty(this.tvControlItem.SelectedNodeID))
{
string trustBatchId = this.tvControlItem.SelectedNodeID;
var t = from y in db.Batch_BatchTrustItem where y.TrustBatchId == trustBatchId select y;
if (t.Count() > 0)
{
bool isAudit = false;
foreach (var n in t)
{
var ndt = BLL.Batch_NDEItemService.GetNDEItemByTrustItemId(n.TrustBatchItemId);
if (ndt != null && ndt.SubmitDate.HasValue)
{
isAudit = true;
break;
}
}
if (!isAudit)
{
// 修改点口单jexl明细的IsBuildTrust为Falsenull
foreach (var p in t)
{
Model.Batch_PointBatchItem pitem = db.Batch_PointBatchItem.FirstOrDefault(x => x.PointBatchItemId == p.PointBatchItemId);
if (pitem != null)
{
if (pitem.TrustBatchCode != null && pitem.TrustBatchCode.Length > 2)
{
string r = pitem.TrustBatchCode.Substring(pitem.TrustBatchCode.Length - 2);
if (r.Contains("R"))
{
pitem.IsCheckRepair = true;
}
else
{
pitem.IsCheckRepair = false;
}
}
else
{
pitem.IsCheckRepair = false;
}
pitem.IsBuildTrust = null;
db.SubmitChanges();
}
}
// 修改点口单的IsTrust为False
string topoint = (from x in db.Batch_BatchTrust where x.TrustBatchId == trustBatchId select x.TopointBatch).FirstOrDefault();
if (!String.IsNullOrEmpty(topoint))
{
string[] points = topoint.Split(',');
foreach (string item in points)
{
Model.Batch_PointBatch point = BLL.Batch_PointBatchService.GetPointBatchById(item);
if (point != null)
{
BLL.Batch_PointBatchService.UpdatePointTrustState(item, false);
}
}
}
var check = from x in db.Batch_NDE where x.TrustBatchId == trustBatchId select x;
if (check.Count() > 0)
{
var ndeItem = from x in db.Batch_NDEItem where x.NDEID == check.First().NDEID select x;
db.Batch_NDEItem.DeleteAllOnSubmit(ndeItem);
db.Batch_NDE.DeleteOnSubmit(check.First());
db.SubmitChanges();
}
db.Batch_BatchTrustItem.DeleteAllOnSubmit(t);
db.SubmitChanges();
BLL.Batch_BatchTrustService.DeleteBatchTrustById(trustBatchId);
ShowNotify(Resources.Lan.DeletedSuccessfully, MessageBoxIcon.Success);
}
else
{
ShowNotify("不能删除,请先取消检测单审核再删除!", MessageBoxIcon.Warning);
return;
}
}
else
{
BLL.Batch_BatchTrustService.DeleteBatchTrustById(trustBatchId);
ShowNotify(Resources.Lan.DeletedSuccessfully, MessageBoxIcon.Success);
}
}
}
else
{
ShowNotify(Resources.Lan.NoPrivilegePrompt, MessageBoxIcon.Warning);
return;
}
}
protected void btnPrint_Click(object sender, EventArgs e)
{
if (CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, Const.HJGL_BatchTrustMenuId, Const.BtnPrint))
{
if (!string.IsNullOrEmpty(this.tvControlItem.SelectedNodeID))
{
string trustBatchId = this.tvControlItem.SelectedNodeID;
Model.View_Batch_BatchTrust trust = BLL.Batch_BatchTrustService.GetBatchTrustViewById(trustBatchId);
if (trust != null)
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("../../Report/ReportPrint.aspx?report=1&trustBatchId={0}&parm={1}", trustBatchId, "编辑 - ")));
}
}
}
else
{
ShowNotify(Resources.Lan.NoPrivilegePrompt, MessageBoxIcon.Warning);
return;
}
}
protected void btnExport_Click(object sender, EventArgs e)
{
string rootPath = Server.MapPath("~/") + Const.ExcelUrl;
//模板文件
string TempletFileName = rootPath + "BatchTrust.xls";
//导出文件
string filePath = rootPath + DateTime.Now.ToString("yyyyMMddhhmmss") + "\\";
if (!Directory.Exists(filePath))
{
Directory.CreateDirectory(filePath);
}
string ReportFileName = filePath + "out.xls";
FileStream file = new FileStream(TempletFileName, FileMode.Open, FileAccess.Read);
HSSFWorkbook hssfworkbook = new HSSFWorkbook(file);
//XSSFWorkbook hssfworkbook = new XSSFWorkbook(file);
#region BatchTrust
HSSFSheet trustSheet = (HSSFSheet)hssfworkbook.GetSheet("Sheet1");
//XSSFFont trustFont = (XSSFFont)hssfworkbook.CreateFont(); //创建字体
//trustFont.FontName = "sans-serif";//字体
//trustFont.FontHeightInPoints = 8; //字体大小
string trustBatchId = this.tvControlItem.SelectedNodeID;
var trust = BLL.Batch_BatchTrustService.GetBatchTrustById(trustBatchId);
var ins = BLL.Project_WorkAreaService.GetProject_WorkAreaByWorkAreaId(trust.WorkAreaId);
string wbs = string.Empty;
if (ins != null)
{
wbs = ins.WorkAreaCode;
}
string trustCode = string.Empty;
string nde = string.Empty;
string trustDate = string.Empty;
string standard = string.Empty;
string isRt = string.Empty;
string ndeUnit = string.Empty;
string projectName = string.Empty;
if (trust != null)
{
trustCode = trust.TrustBatchCode;
trustDate = trust.TrustDate.HasValue ? string.Format("{0:yyyy-MM-dd}", trust.TrustDate) : "";
var n = BLL.Base_DetectionTypeService.GetDetectionTypeByDetectionTypeId(trust.DetectionTypeId);
if (n != null)
{
nde = n.DetectionTypeCode;
if (n.SysType == "光谱检测")
{
standard = "40-010-00-0-0-00-003,ASTM,SH3501,Q/SH 0706-2016";
}
else
{
standard = "NB/T47013-2015, ASME B31.3-2010, SH3517-2013";
}
if (n.SysType == "射线检测")
{
isRt = "AB";
}
}
var project = BLL.Base_ProjectService.GetProjectByProjectId(trust.ProjectId);
if (project != null)
{
var protype = BLL.Base_ProjectTypeService.GetProjectTypeByProjectTypeId(project.ProjectTypeId);
if (protype.ProjectTypeName == "大项目")
{
trustCode = "CTP-" + trustCode;
}
else
{
trustCode = "CTE-" + trustCode;
}
projectName = project.ProjectName;
}
var unit = BLL.Base_UnitService.GetUnit(trust.NDEUuit);
if (unit != null)
{
ndeUnit = unit.UnitCode;
}
if (trustSheet.GetRow(0).GetCell(13) == null)
{
trustSheet.GetRow(0).CreateCell(13);
}
trustSheet.GetRow(0).GetCell(13).SetCellValue(projectName);
if (trustSheet.GetRow(1).GetCell(11) == null)
{
trustSheet.GetRow(1).CreateCell(11);
}
trustSheet.GetRow(1).GetCell(11).SetCellValue(trustCode);
if (trustSheet.GetRow(2).GetCell(8) == null)
{
trustSheet.GetRow(2).CreateCell(8);
}
trustSheet.GetRow(2).GetCell(8).SetCellValue(ndeUnit);
if (trustSheet.GetRow(2).GetCell(14) == null)
{
trustSheet.GetRow(2).CreateCell(14);
}
trustSheet.GetRow(2).GetCell(14).SetCellValue(wbs);
if (trustSheet.GetRow(4).GetCell(3) == null)
{
trustSheet.GetRow(4).CreateCell(3);
}
trustSheet.GetRow(4).GetCell(3).SetCellValue(isRt);
if (trustSheet.GetRow(4).GetCell(8) == null)
{
trustSheet.GetRow(4).CreateCell(8);
}
trustSheet.GetRow(4).GetCell(8).SetCellValue(standard);
if (trustSheet.GetRow(6).GetCell(3) == null)
{
trustSheet.GetRow(6).CreateCell(3);
}
trustSheet.GetRow(6).GetCell(3).SetCellValue(nde);
if (trustSheet.GetRow(6).GetCell(8) == null)
{
trustSheet.GetRow(6).CreateCell(8);
}
trustSheet.GetRow(6).GetCell(8).SetCellValue(trustDate);
}
string strSql = @"SELECT ROW_NUMBER() OVER(ORDER BY PipelineCode,WeldJointCode) AS Number,
TrustBatchItemId, TrustBatchId, InstallationCode, WorkAreaCode,
PipelineCode, WeldJointCode,JointArea, MaterialCode, Size, Thickness,
WeldTypeCode, WelderCode, WeldingMethodCode, DetectionRateCode,
AcceptLevel, Sheet
FROM dbo.View_Batch_BatchTrustItem WHERE TrustBatchId=@TrustBatchId";
List<SqlParameter> parms = new List<SqlParameter>();
parms.Add(new SqlParameter("@TrustBatchId", trustBatchId));
SqlParameter[] parameter = parms.ToArray();
DataTable dt = BLL.SQLHelper.GetDataTableRunText(strSql, parameter);
if (dt.Rows.Count > 0)
{
var rowIndex = 9;
foreach (DataRow dr in dt.Rows)
{
if (trustSheet.GetRow(rowIndex) == null) trustSheet.CreateRow(rowIndex);
#region
if (trustSheet.GetRow(rowIndex).GetCell(0) == null) trustSheet.GetRow(rowIndex).CreateCell(0);
trustSheet.GetRow(rowIndex).GetCell(0).SetCellValue(dr["Number"].ToString());
//trustSheet.GetRow(rowIndex).GetCell(0).CellStyle.SetFont(trustFont);//将字体绑定到样式
if (trustSheet.GetRow(rowIndex).GetCell(1) == null) trustSheet.GetRow(rowIndex).CreateCell(1);
trustSheet.GetRow(rowIndex).GetCell(1).SetCellValue(dr["InstallationCode"].ToString());
if (trustSheet.GetRow(rowIndex).GetCell(2) == null) trustSheet.GetRow(rowIndex).CreateCell(2);
trustSheet.GetRow(rowIndex).GetCell(2).SetCellValue(dr["PipelineCode"].ToString());
if (trustSheet.GetRow(rowIndex).GetCell(4) == null) trustSheet.GetRow(rowIndex).CreateCell(4);
trustSheet.GetRow(rowIndex).GetCell(4).SetCellValue(dr["WeldJointCode"].ToString());
if (trustSheet.GetRow(rowIndex).GetCell(5) == null) trustSheet.GetRow(rowIndex).CreateCell(5);
trustSheet.GetRow(rowIndex).GetCell(5).SetCellValue(dr["JointArea"].ToString());
if (trustSheet.GetRow(rowIndex).GetCell(6) == null) trustSheet.GetRow(rowIndex).CreateCell(6);
trustSheet.GetRow(rowIndex).GetCell(6).SetCellValue(dr["MaterialCode"].ToString());
if (trustSheet.GetRow(rowIndex).GetCell(7) == null) trustSheet.GetRow(rowIndex).CreateCell(7);
trustSheet.GetRow(rowIndex).GetCell(7).SetCellValue(Convert.ToDouble(dr["Size"]).ToString());
if (trustSheet.GetRow(rowIndex).GetCell(8) == null) trustSheet.GetRow(rowIndex).CreateCell(8);
trustSheet.GetRow(rowIndex).GetCell(8).SetCellValue(Convert.ToDouble(dr["Thickness"]).ToString());
if (trustSheet.GetRow(rowIndex).GetCell(9) == null) trustSheet.GetRow(rowIndex).CreateCell(9);
trustSheet.GetRow(rowIndex).GetCell(9).SetCellValue(dr["WeldTypeCode"].ToString());
if (trustSheet.GetRow(rowIndex).GetCell(10) == null) trustSheet.GetRow(rowIndex).CreateCell(10);
trustSheet.GetRow(rowIndex).GetCell(10).SetCellValue(dr["WelderCode"].ToString());
if (trustSheet.GetRow(rowIndex).GetCell(12) == null) trustSheet.GetRow(rowIndex).CreateCell(12);
trustSheet.GetRow(rowIndex).GetCell(12).SetCellValue(dr["WeldingMethodCode"].ToString());
if (trustSheet.GetRow(rowIndex).GetCell(13) == null) trustSheet.GetRow(rowIndex).CreateCell(13);
trustSheet.GetRow(rowIndex).GetCell(13).SetCellValue(dr["DetectionRateCode"].ToString());
if (trustSheet.GetRow(rowIndex).GetCell(14) == null) trustSheet.GetRow(rowIndex).CreateCell(14);
trustSheet.GetRow(rowIndex).GetCell(14).SetCellValue(dr["AcceptLevel"].ToString());
if (trustSheet.GetRow(rowIndex).GetCell(16) == null) trustSheet.GetRow(rowIndex).CreateCell(16);
trustSheet.GetRow(rowIndex).GetCell(16).SetCellValue(dr["Sheet"].ToString());
#endregion
rowIndex++;
}
}
#endregion
trustSheet.ForceFormulaRecalculation = true;
using (FileStream filess = System.IO.File.OpenWrite(ReportFileName))
{
hssfworkbook.Write(filess);
}
FileInfo filet = new FileInfo(ReportFileName);
Response.Clear();
Response.Charset = "GB2312";
Response.ContentEncoding = System.Text.Encoding.UTF8;
// 添加头信息,为"文件下载/另存为"对话框指定默认文件名
Response.AddHeader("Content-Disposition", "attachment; filename=" + trustCode + ".xls");
// 添加头信息,指定文件大小,让浏览器能够显示下载进度
Response.AddHeader("Content-Length", filet.Length.ToString());
// 指定返回的是一个不能被客户端读取的流,必须被下载
Response.ContentType = "application/ms-excel";
// 把文件流发送到客户端
Response.WriteFile(filet.FullName);
// 停止页面的执行
Response.End();
}
#region
/// <summary>
/// 判断是否可以删除
/// </summary>
/// <returns></returns>
private bool judgementDelete(string id, bool isShow)
{
string content = string.Empty;
//if (BLL.HJGL_HotProessManageEditService.GetHotProessByJotId(id) > 0)
//{
// content = "热处理已经使用了该焊口,不能删除!";
//}
//if (BLL.Funs.DB.HJGL_CH_TrustItem.FirstOrDefault(x => x.TrustBatchItemId == id) != null)
//{
// content = "无损委托已经使用了该焊口,不能删除!";
//}
//if (BLL.Funs.DB.HJGL_CH_CheckItem.FirstOrDefault(x => x.TrustBatchItemId == id) != null)
//{
// content = "检测单已经使用了该焊口,不能删除!";
//}
if (string.IsNullOrEmpty(content))
{
return true;
}
else
{
if (isShow)
{
Alert.ShowInTop(content, MessageBoxIcon.Error);
}
return false;
}
}
#endregion
}
}