696 lines
30 KiB
C#
696 lines
30 KiB
C#
using BLL;
|
|
using Newtonsoft.Json.Linq;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Data.SqlClient;
|
|
using System.Data;
|
|
using System.Linq;
|
|
using System.Web;
|
|
using System.Web.UI;
|
|
using System.Web.UI.WebControls;
|
|
using NPOI.HSSF.Util;
|
|
using NPOI.POIFS.Properties;
|
|
using NPOI.SS.UserModel;
|
|
using NPOI.XSSF.UserModel;
|
|
using System.IO;
|
|
using System.Security.Policy;
|
|
using System.Threading;
|
|
using MiniExcelLibs;
|
|
|
|
namespace FineUIPro.Web.WeldingProcess.WeldingReport
|
|
{
|
|
public partial class PipelineTraceList : PageBase
|
|
{
|
|
public static DataTable source { get; set; }
|
|
public static int percent { get; set; }
|
|
public static string url { get; set; }
|
|
|
|
[System.Web.Services.WebMethod]
|
|
public static int getPercent()
|
|
{
|
|
return percent;
|
|
}
|
|
|
|
[System.Web.Services.WebMethod]
|
|
public static string getUrl()
|
|
{
|
|
return url;
|
|
}
|
|
#region 加载
|
|
/// <summary>
|
|
/// 加载页面
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
{
|
|
if (!IsPostBack)
|
|
{
|
|
this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString();
|
|
BLL.Project_WorkAreaService.InitWorkAreaDropDownList(this.drpWorkAreaId, true, this.CurrUser.LoginProjectId, string.Empty, string.Empty, string.Empty, Resources.Lan.PleaseSelect);//区域
|
|
}
|
|
}
|
|
|
|
private DataTable GetDataTable()
|
|
{
|
|
List<SqlParameter> listStr = new List<SqlParameter>();
|
|
listStr.Add(new SqlParameter("@projectId", this.CurrUser.LoginProjectId));
|
|
|
|
if (drpWorkAreaId.SelectedValue != Const._Null && drpWorkAreaId.SelectedValue != null)
|
|
{
|
|
string[] areaList = drpWorkAreaId.SelectedValueArray;
|
|
string workAreaIds = string.Join(",", areaList);
|
|
listStr.Add(new SqlParameter("@workAreaIds", workAreaIds));
|
|
// listStr.Add(new SqlParameter("@workAreaId", this.drpWorkAreaId.SelectedValue));
|
|
}
|
|
if (!string.IsNullOrEmpty(drpPipeLine.SelectedValue) && drpPipeLine.SelectedValue != Const._Null)
|
|
{
|
|
string[] pipeList = drpPipeLine.SelectedValueArray;
|
|
string pipeLineIds = string.Join(",", pipeList);
|
|
listStr.Add(new SqlParameter("@pipelineIds", pipeLineIds));
|
|
}
|
|
else
|
|
{
|
|
listStr.Add(new SqlParameter("@pipelineIds", null));
|
|
}
|
|
if (!string.IsNullOrEmpty(txtTestPackageNo.Text.Trim()))
|
|
{
|
|
listStr.Add(new SqlParameter("@TestPackageNo", '%'+txtTestPackageNo.Text.Trim()+"%"));
|
|
}
|
|
else
|
|
{
|
|
listStr.Add(new SqlParameter("@TestPackageNo", null));
|
|
}
|
|
//if (!string.IsNullOrEmpty(this.drpWorkAreaId.Text.Trim()))
|
|
//{
|
|
// listStr.Add(new SqlParameter("@pipelineCode", this.txtPipelineCode.Text.Trim()));
|
|
//}
|
|
//else
|
|
//{
|
|
// listStr.Add(new SqlParameter("@pipelineCode", null));
|
|
//}
|
|
SqlParameter[] parameter = listStr.ToArray();
|
|
DataTable dt = SQLHelper.GetDataTableRunProc("sp_rpt_JointComprehensive", parameter);
|
|
return dt;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 绑定数据
|
|
/// </summary>
|
|
private void BindGrid()
|
|
{
|
|
|
|
this.Grid1.RecordCount = source.Rows.Count;
|
|
var table = this.GetPagedDataTable(Grid1, source);
|
|
Grid1.DataSource = table;
|
|
Grid1.DataBind();
|
|
|
|
}
|
|
|
|
protected void drpWorkAreaId_OnSelectedIndexChanged(object sender, EventArgs e)
|
|
{
|
|
string[] workAreaIds = drpWorkAreaId.SelectedValueArray;
|
|
if (workAreaIds.Length == 1)
|
|
{
|
|
BLL.Pipeline_PipelineService.InitPipelineDropDownList(drpPipeLine, workAreaIds[0], Resources.Lan.PleaseSelect);
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// 改变索引事件
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
|
|
{
|
|
BindGrid();
|
|
}
|
|
|
|
/// <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();
|
|
}
|
|
|
|
/// <summary>
|
|
/// 排序
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void Grid1_Sort(object sender, FineUIPro.GridSortEventArgs e)
|
|
{
|
|
this.BindGrid();
|
|
}
|
|
#endregion
|
|
|
|
#region 统计按钮事件
|
|
/// <summary>
|
|
/// 统计
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void BtnAnalyse_Click(object sender, EventArgs e)
|
|
{
|
|
source = GetDataTable();
|
|
BindGrid();
|
|
}
|
|
#endregion
|
|
|
|
#region 导出按钮
|
|
/// 导出按钮
|
|
/// </summary>
|
|
/// <param name="sender"></param>
|
|
/// <param name="e"></param>
|
|
protected void btnOut_Click(object sender, EventArgs e)
|
|
{
|
|
percent = 0;
|
|
url = "";
|
|
|
|
Thread t = new Thread(new ThreadStart(() => { Export2(); }));
|
|
t.Start();
|
|
PageContext.RegisterStartupScript("showProcessBar()");
|
|
//Export2();
|
|
}
|
|
|
|
private void Export()
|
|
{
|
|
string templatePath = Funs.RootPath + @"File\Excel\HJGL_DataOut\管道追溯表.xlsx";
|
|
string path = Funs.RootPath + @"File\Excel\Temp\管道追溯表.xlsx";
|
|
path = path.Replace(".xlsx", string.Format("{0:yyyy-MM-dd-HH-mm}", DateTime.Now) + ".xlsx");
|
|
|
|
|
|
|
|
DataTable tb = GetDataTable();
|
|
DataColumn dc = null;
|
|
dc = tb.Columns.Add("Index", Type.GetType("System.Int32"));
|
|
dc = tb.Columns.Add("WeldSilk", Type.GetType("System.String"));
|
|
dc = tb.Columns.Add("WeldFlux", Type.GetType("System.String"));
|
|
int totalNum = tb.Rows.Count;
|
|
var rowIndex = 1;
|
|
foreach (DataRow row in tb.Rows)
|
|
{
|
|
|
|
row["Index"] = row.Table.Rows.IndexOf(row) + 1;
|
|
row["WeldSilk"] = ConvertWeldSilk(row["WeldSilkId"]);
|
|
row["WeldFlux"] = ConvertWeldFlux(row["WeldSilkId"]);
|
|
if ((int)(90 * (rowIndex) / totalNum) > percent)
|
|
{
|
|
percent = (int)(100 * (rowIndex) / totalNum);
|
|
|
|
}
|
|
rowIndex++;
|
|
}
|
|
|
|
|
|
tb.TableName = "Data";
|
|
var value = new Dictionary<string, object>()
|
|
{
|
|
["Data"] = tb,
|
|
};
|
|
MiniExcel.SaveAsByTemplate(path, templatePath, value);
|
|
|
|
percent = 100;
|
|
url = path.Replace(Server.MapPath("~/"), "");
|
|
/*string fileName = "管道追溯表.xlsx";
|
|
FileInfo info = new FileInfo(path);
|
|
long fileSize = info.Length;
|
|
System.Web.HttpContext.Current.Response.Clear();
|
|
System.Web.HttpContext.Current.Response.ContentType = "application/x-zip-compressed";
|
|
System.Web.HttpContext.Current.Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
|
|
System.Web.HttpContext.Current.Response.AddHeader("Content-Length", fileSize.ToString());
|
|
System.Web.HttpContext.Current.Response.TransmitFile(path, 0, fileSize);
|
|
System.Web.HttpContext.Current.Response.Flush();
|
|
System.Web.HttpContext.Current.Response.Close();
|
|
File.Delete(path);*/
|
|
}
|
|
private void Export2()
|
|
{
|
|
string rootPath = Server.MapPath("~/") + Const.ExcelUrl;
|
|
//模板文件
|
|
string TempletFileName = rootPath + "HJGL_DataOut\\管道追溯表.xlsx";
|
|
//导出文件
|
|
string filePath = rootPath + "Temp\\" + DateTime.Now.ToString("yyyyMMddhhmmss") + "\\";
|
|
if (!Directory.Exists(filePath))
|
|
{
|
|
Directory.CreateDirectory(filePath);
|
|
}
|
|
|
|
string ReportFileName = filePath + "管道追溯表" + DateTime.Now.ToString("yyyyMMddhhmmss") + ".xlsx";
|
|
//string ReportFileName = filePath + "out.xlsx";
|
|
|
|
FileStream file = new FileStream(TempletFileName, FileMode.Open, FileAccess.Read);
|
|
XSSFWorkbook hssfworkbook = new XSSFWorkbook(file);
|
|
|
|
#region JointComprehensive
|
|
XSSFSheet reportModel = (XSSFSheet)hssfworkbook.GetSheet("Sheet1");
|
|
|
|
XSSFFont cs_content_Font1 = (XSSFFont)hssfworkbook.CreateFont(); //创建字体
|
|
cs_content_Font1.FontName = "Arial";//字体
|
|
cs_content_Font1.FontHeightInPoints = 9; //字体大小
|
|
|
|
ICellStyle style = hssfworkbook.CreateCellStyle();
|
|
style.SetFont(cs_content_Font1);
|
|
style.BorderDiagonalLineStyle=NPOI.SS.UserModel.BorderStyle.Thin;
|
|
style.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin;
|
|
style.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin;
|
|
style.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin;
|
|
style.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin;
|
|
style.VerticalAlignment=NPOI.SS.UserModel.VerticalAlignment.Center;
|
|
|
|
XSSFFont cs_content_Font = (XSSFFont)hssfworkbook.CreateFont(); //创建字体
|
|
cs_content_Font.FontName = "sans-serif";//字体
|
|
cs_content_Font.FontHeightInPoints = 10; //字体大小
|
|
cs_content_Font.Color = HSSFColor.Red.Index;
|
|
|
|
IDataFormat dataformat = hssfworkbook.CreateDataFormat();
|
|
ICellStyle styleDate = hssfworkbook.CreateCellStyle();
|
|
styleDate.SetFont(cs_content_Font1);
|
|
styleDate.BorderDiagonalLineStyle = NPOI.SS.UserModel.BorderStyle.Thin;
|
|
styleDate.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin;
|
|
styleDate.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin;
|
|
styleDate.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin;
|
|
styleDate.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin;
|
|
styleDate.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center;
|
|
styleDate.DataFormat = dataformat.GetFormat("yyyy-mm-dd");
|
|
|
|
// 排序
|
|
DataTable tb = GetDataTable();
|
|
DataColumn dc = null;
|
|
dc = tb.Columns.Add("Index", Type.GetType("System.Int32"));
|
|
dc = tb.Columns.Add("WeldSilk", Type.GetType("System.String"));
|
|
dc = tb.Columns.Add("WeldFlux", Type.GetType("System.String"));
|
|
|
|
|
|
int totalNum = tb.Rows.Count;
|
|
|
|
if (tb.Rows.Count > 0)
|
|
{
|
|
var rowIndex = 2;
|
|
foreach (DataRow row in tb.Rows)
|
|
{
|
|
row["Index"] = row.Table.Rows.IndexOf(row) + 1;
|
|
row["WeldSilk"] = ConvertWeldSilk(row["WeldSilkId"]);
|
|
row["WeldFlux"] = ConvertWeldFlux(row["WeldSilkId"]);
|
|
if (reportModel.GetRow(rowIndex) == null) reportModel.CreateRow(rowIndex);
|
|
|
|
#region 列赋值
|
|
//序号
|
|
if (reportModel.GetRow(rowIndex).GetCell(0) == null) reportModel.GetRow(rowIndex).CreateCell(0);
|
|
reportModel.GetRow(rowIndex).GetCell(0).SetCellValue((row["Index"].ToString()).ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(0).CellStyle = style; //将字体绑定到样式
|
|
reportModel.GetRow(rowIndex).Height= 30 * 20;
|
|
// 区域
|
|
if (reportModel.GetRow(rowIndex).GetCell(1) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(1);
|
|
reportModel.GetRow(rowIndex).GetCell(1).SetCellValue(row["WorkAreaCode"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(1).CellStyle = style;
|
|
|
|
// 试压包号
|
|
if (reportModel.GetRow(rowIndex).GetCell(2) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(2);
|
|
reportModel.GetRow(rowIndex).GetCell(2).SetCellValue(row["TestPackageNo"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(2).CellStyle = style;
|
|
|
|
// 单线图号
|
|
if (reportModel.GetRow(rowIndex).GetCell(3) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(3);
|
|
reportModel.GetRow(rowIndex).GetCell(3).SetCellValue(row["SingleNumber"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(3).CellStyle = style;
|
|
|
|
// 管线号
|
|
if (reportModel.GetRow(rowIndex).GetCell(4) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(4);
|
|
reportModel.GetRow(rowIndex).GetCell(4).SetCellValue(row["PipelineCode"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(4).CellStyle = style;
|
|
|
|
// PIPClassCode
|
|
if (reportModel.GetRow(rowIndex).GetCell(5) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(5);
|
|
reportModel.GetRow(rowIndex).GetCell(5).SetCellValue(row["PIPClassCode"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(5).CellStyle = style;
|
|
|
|
// DrawingsNum
|
|
if (reportModel.GetRow(rowIndex).GetCell(6) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(6);
|
|
reportModel.GetRow(rowIndex).GetCell(6).SetCellValue(row["DrawingsNum"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(6).CellStyle = style;
|
|
|
|
// PageNum
|
|
if (reportModel.GetRow(rowIndex).GetCell(7) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(7);
|
|
reportModel.GetRow(rowIndex).GetCell(7).SetCellValue(row["PageNum"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(7).CellStyle = style;
|
|
|
|
// WeldJointCode
|
|
if (reportModel.GetRow(rowIndex).GetCell(8) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(8);
|
|
reportModel.GetRow(rowIndex).GetCell(8).SetCellValue(row["WeldJointCode"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(8).CellStyle = style;
|
|
|
|
// WeldTypeCode
|
|
if (reportModel.GetRow(rowIndex).GetCell(9) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(9);
|
|
reportModel.GetRow(rowIndex).GetCell(9).SetCellValue(row["WeldTypeCode"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(9).CellStyle = style;
|
|
|
|
// WeldingLocationCode
|
|
if (reportModel.GetRow(rowIndex).GetCell(10) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(10);
|
|
reportModel.GetRow(rowIndex).GetCell(10).SetCellValue(row["WeldingLocationCode"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(10).CellStyle = style;
|
|
|
|
// Specification
|
|
if (reportModel.GetRow(rowIndex).GetCell(11) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(11);
|
|
reportModel.GetRow(rowIndex).GetCell(11).SetCellValue(row["Specification"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(11).CellStyle = style;
|
|
|
|
// MaterialCode1
|
|
if (reportModel.GetRow(rowIndex).GetCell(12) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(12);
|
|
reportModel.GetRow(rowIndex).GetCell(12).SetCellValue(row["MaterialCode1"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(12).CellStyle = style;
|
|
|
|
// MaterialCode2
|
|
if (reportModel.GetRow(rowIndex).GetCell(13) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(13);
|
|
reportModel.GetRow(rowIndex).GetCell(13).SetCellValue(row["MaterialCode2"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(13).CellStyle = style;
|
|
|
|
// PipeAssembly1
|
|
if (reportModel.GetRow(rowIndex).GetCell(14) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(14);
|
|
reportModel.GetRow(rowIndex).GetCell(14).SetCellValue(row["PipeAssembly1"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(14).CellStyle = style;
|
|
|
|
// PipeAssembly2
|
|
if (reportModel.GetRow(rowIndex).GetCell(15) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(15);
|
|
reportModel.GetRow(rowIndex).GetCell(15).SetCellValue(row["PipeAssembly2"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(15).CellStyle = style;
|
|
|
|
// HeartNo1
|
|
if (reportModel.GetRow(rowIndex).GetCell(16) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(16);
|
|
reportModel.GetRow(rowIndex).GetCell(16).SetCellValue(row["HeartNo1"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(16).CellStyle = style;
|
|
|
|
// HeartNo2
|
|
if (reportModel.GetRow(rowIndex).GetCell(17) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(17);
|
|
reportModel.GetRow(rowIndex).GetCell(17).SetCellValue(row["HeartNo2"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(17).CellStyle = style;
|
|
|
|
// BackingWelderCode
|
|
if (reportModel.GetRow(rowIndex).GetCell(18) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(18);
|
|
reportModel.GetRow(rowIndex).GetCell(18).SetCellValue(row["BackingWelderCode"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(18).CellStyle = style;
|
|
|
|
// CoverWelderCode
|
|
if (reportModel.GetRow(rowIndex).GetCell(19) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(19);
|
|
reportModel.GetRow(rowIndex).GetCell(19).SetCellValue(row["CoverWelderCode"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(19).CellStyle = style;
|
|
|
|
// WeldingMethodName
|
|
if (reportModel.GetRow(rowIndex).GetCell(20) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(20);
|
|
reportModel.GetRow(rowIndex).GetCell(20).SetCellValue(row["WeldingMethodName"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(20).CellStyle = style;
|
|
|
|
// MediumName
|
|
if (reportModel.GetRow(rowIndex).GetCell(21) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(21);
|
|
reportModel.GetRow(rowIndex).GetCell(21).SetCellValue(row["MediumName"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(21).CellStyle = style;
|
|
|
|
// WeldingDate
|
|
if (reportModel.GetRow(rowIndex).GetCell(22) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(22);
|
|
|
|
string weldingDateStr = row["WeldingDate"].ToString();
|
|
DateTime weldingDate;
|
|
|
|
if (DateTime.TryParse(weldingDateStr, out weldingDate))
|
|
{
|
|
reportModel.GetRow(rowIndex).GetCell(22).SetCellValue(weldingDate.ToString("yyyy-MM-dd"));
|
|
}
|
|
else
|
|
{
|
|
reportModel.GetRow(rowIndex).GetCell(22).SetCellValue(""); // 或者设置为其他默认值
|
|
}
|
|
|
|
reportModel.GetRow(rowIndex).GetCell(22).CellStyle = style;
|
|
|
|
|
|
// DetectionTypeCode
|
|
if (reportModel.GetRow(rowIndex).GetCell(23) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(23);
|
|
reportModel.GetRow(rowIndex).GetCell(23).SetCellValue(row["DetectionTypeCode"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(23).CellStyle = style;
|
|
|
|
// if_dk
|
|
if (reportModel.GetRow(rowIndex).GetCell(24) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(24);
|
|
reportModel.GetRow(rowIndex).GetCell(24).SetCellValue(row["if_dk"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(24).CellStyle = style;
|
|
|
|
// DetectionRateCode
|
|
if (reportModel.GetRow(rowIndex).GetCell(25) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(25);
|
|
reportModel.GetRow(rowIndex).GetCell(25).SetCellValue(row["DetectionRateCode"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(25).CellStyle = style;
|
|
|
|
// AcceptLevel
|
|
if (reportModel.GetRow(rowIndex).GetCell(26) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(26);
|
|
reportModel.GetRow(rowIndex).GetCell(26).SetCellValue(row["AcceptLevel"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(26).CellStyle = style;
|
|
|
|
// NDEReportNo
|
|
if (reportModel.GetRow(rowIndex).GetCell(27) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(27);
|
|
reportModel.GetRow(rowIndex).GetCell(27).SetCellValue(row["NDEReportNo"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(27).CellStyle = style;
|
|
|
|
// IsHotProess
|
|
if (reportModel.GetRow(rowIndex).GetCell(28) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(28);
|
|
reportModel.GetRow(rowIndex).GetCell(28).SetCellValue(row["HotReportCode"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(28).CellStyle = style;
|
|
|
|
// HotReportCode
|
|
if (reportModel.GetRow(rowIndex).GetCell(29) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(29);
|
|
reportModel.GetRow(rowIndex).GetCell(29).SetCellValue(row["HotReportCode"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(29).CellStyle = style;
|
|
|
|
// WeldSilk
|
|
if (reportModel.GetRow(rowIndex).GetCell(30) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(30);
|
|
reportModel.GetRow(rowIndex).GetCell(30).SetCellValue(row["WeldSilk"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(30).CellStyle = style;
|
|
|
|
//WMT_MatCode
|
|
if (reportModel.GetRow(rowIndex).GetCell(31) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(31);
|
|
reportModel.GetRow(rowIndex).GetCell(31).SetCellValue(row["WMT_MatCode"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(31).CellStyle = style;
|
|
|
|
// WeldFlux
|
|
if (reportModel.GetRow(rowIndex).GetCell(32) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(32);
|
|
reportModel.GetRow(rowIndex).GetCell(32).SetCellValue(row["WeldFlux"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(32).CellStyle = style;
|
|
|
|
if (reportModel.GetRow(rowIndex).GetCell(33) == null)
|
|
reportModel.GetRow(rowIndex).CreateCell(33);
|
|
reportModel.GetRow(rowIndex).GetCell(33).SetCellValue(row["Remark"].ToString());
|
|
reportModel.GetRow(rowIndex).GetCell(33).CellStyle = style;
|
|
#endregion
|
|
|
|
if ((int)(90 * (rowIndex) / totalNum) > percent)
|
|
{
|
|
percent = (int)(100 * (rowIndex) / totalNum);
|
|
|
|
}
|
|
rowIndex++;
|
|
}
|
|
}
|
|
#endregion
|
|
reportModel.ForceFormulaRecalculation = true;
|
|
|
|
using (FileStream filess = System.IO.File.OpenWrite(ReportFileName))
|
|
{
|
|
hssfworkbook.Write(filess);
|
|
}
|
|
|
|
percent = 100;
|
|
url = ReportFileName.Replace(Server.MapPath("~/"), "");
|
|
|
|
//FileInfo filet = new FileInfo(ReportFileName);
|
|
//Response.Clear();
|
|
//Response.Charset = "GB2312";
|
|
//Response.ContentEncoding = System.Text.Encoding.UTF8;
|
|
//// 添加头信息,为"文件下载/另存为"对话框指定默认文件名
|
|
//Response.AddHeader("Content-Disposition", "attachment; filename=焊口综合分析_" + Server.UrlEncode(DateTime.Now.ToString("yyyyMMddhhmmss") + ".xlsx"));
|
|
//// 添加头信息,指定文件大小,让浏览器能够显示下载进度
|
|
//Response.AddHeader("Content-Length", filet.Length.ToString());
|
|
//// 指定返回的是一个不能被客户端读取的流,必须被下载
|
|
//Response.ContentType = "application/ms-excel";
|
|
//// 把文件流发送到客户端
|
|
//Response.WriteFile(filet.FullName);
|
|
//// 停止页面的执行
|
|
//Response.End();
|
|
|
|
}
|
|
|
|
/// <summary>
|
|
/// 导出方法
|
|
/// </summary>
|
|
/// <param name="grid"></param>
|
|
/// <returns></returns>
|
|
//private string GetGridTableHtml(Grid grid)
|
|
//{
|
|
// StringBuilder sb = new StringBuilder();
|
|
// grid.PageSize = 500000;
|
|
// BindGrid();
|
|
// sb.Append("<meta http-equiv=\"content-type\" content=\"application/excel; charset=UTF-8\"/>");
|
|
// sb.Append("<table cellspacing=\"0\" rules=\"all\" border=\"1\" style=\"border-collapse:collapse;\">");
|
|
// sb.Append("<tr>");
|
|
// foreach (GridColumn column in grid.Columns)
|
|
// {
|
|
// sb.AppendFormat("<td>{0}</td>", column.HeaderText);
|
|
// }
|
|
// sb.Append("</tr>");
|
|
// foreach (GridRow row in grid.Rows)
|
|
// {
|
|
// sb.Append("<tr>");
|
|
// foreach (GridColumn column in grid.Columns)
|
|
// {
|
|
// string html = row.Values[column.ColumnIndex].ToString();
|
|
// if (column.ColumnID == "tfNumber")
|
|
// {
|
|
// html = (row.FindControl("labNumber") as AspNet.Label).Text;
|
|
// }
|
|
// if (column.ColumnID == "tfIsHotProess")
|
|
// {
|
|
// html = (row.FindControl("lblIsHotProess") as AspNet.Label).Text;
|
|
// }
|
|
// if (column.ColumnID == "tfif_dk")
|
|
// {
|
|
// html = (row.FindControl("lblif_dk") as AspNet.Label).Text;
|
|
// }
|
|
// sb.AppendFormat("<td>{0}</td>", html);
|
|
// }
|
|
|
|
// sb.Append("</tr>");
|
|
// }
|
|
|
|
// sb.Append("</table>");
|
|
|
|
// return sb.ToString();
|
|
//}
|
|
#endregion
|
|
|
|
#region 格式化字符串
|
|
/// <summary>
|
|
/// 是否热处理
|
|
/// </summary>
|
|
/// <param name="isHotProess"></param>
|
|
/// <returns></returns>
|
|
protected string ConvertIsHotProess(object isHotProess)
|
|
{
|
|
if (isHotProess != null)
|
|
{
|
|
if (isHotProess.ToString() == "True")
|
|
{
|
|
return Resources.Lan.Yes;
|
|
}
|
|
else
|
|
{
|
|
return Resources.Lan.No;
|
|
}
|
|
}
|
|
return null;
|
|
}
|
|
|
|
/// <summary>
|
|
/// 是否点口
|
|
/// </summary>
|
|
/// <param name="if_dk"></param>
|
|
/// <returns></returns>
|
|
protected string Convertif_dk(object if_dk)
|
|
{
|
|
if (if_dk != null)
|
|
{
|
|
if (if_dk.ToString() == "1")
|
|
{
|
|
return Resources.Lan.Yes;
|
|
}
|
|
else
|
|
{
|
|
return Resources.Lan.No;
|
|
}
|
|
}
|
|
return null;
|
|
}
|
|
|
|
protected string ConvertWeldSilk(object WeldSilkId)
|
|
{
|
|
string weldSilkName = string.Empty;
|
|
if (WeldSilkId != null)
|
|
{
|
|
string[] weldSilkIds = WeldSilkId.ToString().Split(',');
|
|
if (weldSilkIds.Count() > 0)
|
|
{
|
|
foreach (string s in weldSilkIds)
|
|
{
|
|
var silk = BLL.Base_ConsumablesService.GetConsumablesByConsumablesId(s);
|
|
if (silk != null)
|
|
{
|
|
weldSilkName = weldSilkName + silk.ConsumablesName + ',';
|
|
}
|
|
}
|
|
if (weldSilkName.Length > 0)
|
|
{
|
|
weldSilkName = weldSilkName.Substring(0, weldSilkName.Length - 1);
|
|
}
|
|
}
|
|
}
|
|
return weldSilkName;
|
|
}
|
|
|
|
protected string ConvertWeldFlux(object WeldSilkId)
|
|
{
|
|
string weldFlux = string.Empty;
|
|
string[] weldSilkIds = WeldSilkId.ToString().Split(',');
|
|
if (weldSilkIds.Count() > 0)
|
|
{
|
|
foreach (string s in weldSilkIds)
|
|
{
|
|
var silk = BLL.Base_ConsumablesService.GetConsumablesByConsumablesId(s);
|
|
if (silk != null && !string.IsNullOrEmpty(silk.UserFlux))
|
|
{
|
|
weldFlux = weldFlux + silk.UserFlux + ',';
|
|
}
|
|
|
|
}
|
|
if (weldFlux.Length > 0)
|
|
{
|
|
weldFlux = weldFlux.Substring(0, weldFlux.Length - 1);
|
|
}
|
|
}
|
|
return weldFlux;
|
|
}
|
|
|
|
#endregion
|
|
|
|
}
|
|
} |