2023-01-03 焊接日报增加导出
This commit is contained in:
@@ -1,8 +1,10 @@
|
||||
using BLL;
|
||||
using MiniExcelLibs;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Data.SqlClient;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
|
||||
namespace FineUIPro.Web.HJGL.WeldingManage
|
||||
@@ -81,6 +83,7 @@ namespace FineUIPro.Web.HJGL.WeldingManage
|
||||
tn1.NodeID = q.UnitWorkId;
|
||||
tn1.Text = q.UnitWorkName;
|
||||
tn1.ToolTip = "施工单位:" + u.UnitName;
|
||||
tn1.CommandName = "UnitWork";
|
||||
rootNode1.Nodes.Add(tn1);
|
||||
BindNodes(tn1);
|
||||
}
|
||||
@@ -94,6 +97,7 @@ namespace FineUIPro.Web.HJGL.WeldingManage
|
||||
tn2.NodeID = q.UnitWorkId;
|
||||
tn2.Text = q.UnitWorkName;
|
||||
tn2.ToolTip = "施工单位:" + u.UnitName;
|
||||
tn2.CommandName = "UnitWork";
|
||||
rootNode2.Nodes.Add(tn2);
|
||||
BindNodes(tn2);
|
||||
}
|
||||
@@ -122,6 +126,7 @@ namespace FineUIPro.Web.HJGL.WeldingManage
|
||||
newNode.Text = item.WeldingDailyCode;
|
||||
newNode.NodeID = item.WeldingDailyId;
|
||||
newNode.EnableClickEvent = true;
|
||||
newNode.CommandName = "WeldingDaily";
|
||||
node.Nodes.Add(newNode);
|
||||
}
|
||||
}
|
||||
@@ -185,7 +190,7 @@ namespace FineUIPro.Web.HJGL.WeldingManage
|
||||
{
|
||||
string strSql = @"SELECT WeldingDailyId,WeldJointId,PipelineCode,WeldJointCode,
|
||||
BackingWelderCode,CoverWelderCode,Material1Code,Material2Code,
|
||||
Dia,Thickness,WeldTypeCode,WeldingMethodCode,WeldingWireCode,WeldingMode,
|
||||
Dia,DNDia,Thickness,WeldTypeCode,WeldingMethodCode,WeldingWireCode,WeldingMode,
|
||||
WeldingRodCode,Size
|
||||
FROM dbo.View_HJGL_WeldJoint
|
||||
WHERE WeldingDailyId=@WeldingDailyId";
|
||||
@@ -204,7 +209,9 @@ namespace FineUIPro.Web.HJGL.WeldingManage
|
||||
SqlParameter[] parameter = listStr.ToArray();
|
||||
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
||||
var SumDia = tb.AsEnumerable().Sum(x => x.Field<decimal>("Size"));
|
||||
var WelderCount = tb.AsEnumerable().Select(x => x.Field<string>("CoverWelderCode")).ToList().Distinct().Count();
|
||||
txtSumSize.Text= SumDia.ToString();
|
||||
txtTeam.Text = WelderCount.ToString();
|
||||
// 2.获取当前分页数据
|
||||
//var table = this.GetPagedDataTable(Grid1, tb1);
|
||||
Grid1.RecordCount = tb.Rows.Count;
|
||||
@@ -496,15 +503,44 @@ namespace FineUIPro.Web.HJGL.WeldingManage
|
||||
|
||||
protected void btnOut_Click(object sender, EventArgs e)
|
||||
{
|
||||
Response.ClearContent();
|
||||
string filename = txtWeldingDate.Text;
|
||||
Response.AddHeader("content-disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("焊接日报" + filename, System.Text.Encoding.UTF8) + ".xls");
|
||||
Response.ContentType = "application/excel";
|
||||
Response.ContentEncoding = System.Text.Encoding.UTF8;
|
||||
//this.Grid1.PageSize = this.;
|
||||
BindGrid();
|
||||
Response.Write(GetGridTableHtml(Grid1));
|
||||
Response.End();
|
||||
var value = new Dictionary<string, object>();
|
||||
string filename = "";
|
||||
switch (this.tvControlItem.SelectedNode.CommandName)
|
||||
{
|
||||
case "UnitWork":
|
||||
value = BLL.WeldingDailyService.GetFileOutValueByUnitWorkId(this.tvControlItem.SelectedNodeID, this.txtMonth.Text.Trim());
|
||||
var unitWork = BLL.UnitWorkService.getUnitWorkByUnitWorkId(tvControlItem.SelectedNodeID);
|
||||
filename = "焊接日报-" + unitWork.UnitWorkName+ this.txtMonth.Text.Trim()+ ".xlsx";
|
||||
break;
|
||||
case "WeldingDaily":
|
||||
value = WeldingDailyService.GetFileOutValueById(this.tvControlItem.SelectedNodeID);
|
||||
var daily = BLL.WeldingDailyService.GetPipeline_WeldingDailyByWeldingDailyId(tvControlItem.SelectedNodeID);
|
||||
var unitwork = UnitWorkService.getUnitWorkByUnitWorkId(daily.UnitWorkId);
|
||||
filename = "焊接日报-" + unitwork.UnitWorkName + daily.WeldingDailyCode + ".xlsx";
|
||||
break;
|
||||
}
|
||||
string path = Funs.RootPath + @"File\Excel\Temp\焊接日报.xlsx";
|
||||
path = path.Replace(".xlsx", string.Format("{0:yyyy-MM-dd-HH-mm}", DateTime.Now) + ".xlsx");
|
||||
if (value.Count>0)
|
||||
{
|
||||
MiniExcel.SaveAs(path, value);
|
||||
|
||||
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);
|
||||
}
|
||||
else
|
||||
{
|
||||
Alert.ShowInTop("无数据,无法导出!", MessageBoxIcon.Warning);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user