20260728 修改焊工焊接检测统计表导出

This commit is contained in:
2026-07-28 14:35:50 +08:00
parent a0a7e026a3
commit e490ea9c89
4 changed files with 255 additions and 122 deletions
@@ -0,0 +1,113 @@
ALTER PROC [dbo].[HJGL_sp_rpt_welderStatistics]
@unitcode varchar(50) = NULL,
@WED_ID nvarchar(50) = NULL,
@projectId NVARCHAR(50) = NULL
AS
/*보묏보쌈쇱꿎固셕깊*/
SELECT welder.ProjectWelderId,
welder.ProjectId,
project.ProjectCode,--嘉묏뵀
wld.wed_code,-- 보묏덜쯤
wld.wed_name,--보묏츰냔
ISNULL(totalJoint.totalJoint,0) AS totalJoint, --綠보보룹鑒
ISNULL(TrustJointNum.TrustJointNum,0) AS TrustJointNum, --綠官辜보룹鑒
CAST((CASE ISNULL(TrustJointNum.TrustJointNum,0) WHEN 0 THEN 0
ELSE 1.0 * ISNULL(TrustJointNum.TrustJointNum,0)/(1.0 * totalJoint.totalJoint) END) AS DECIMAL(19,3))
AS OneCheckRate , ---寧늴쇱꿎궐절
ISNULL(FixedJoint.FixedJoint,0) AS FixedJoint, --綠보미땍왯鑒
ISNULL(TrustFixedJoint.TrustFixedJoint,0) AS TrustFixedJoint, --綠官辜미땍왯鑒
CAST((CASE ISNULL(TrustFixedJoint.TrustFixedJoint,0) WHEN 0 THEN 0
ELSE 1.0 * ISNULL(TrustFixedJoint.TrustFixedJoint,0)/(1.0 * FixedJoint.FixedJoint) END) AS DECIMAL(19,3))
AS FixedJointCheckRate , ---미땍왯쇱꿎궐절
ISNULL(ButtJoint.ButtJoint,0) AS ButtJoint, --綠보뚤쌈보룹鑒
ISNULL(TrustButtJoint.TrustButtJoint,0) AS TrustButtJoint, --綠官辜뚤쌈보룹鑒
CAST((CASE ISNULL(TrustButtJoint.TrustButtJoint,0) WHEN 0 THEN 0
ELSE 1.0 * ISNULL(TrustButtJoint.TrustButtJoint,0)/(1.0 * ButtJoint.ButtJoint) END) AS DECIMAL(19,3))
AS ButtJointCheckRate , ---뚤쌈보룹쇱꿎궐절
ISNULL(FilletJoint.FilletJoint,0) AS FilletJoint, --綠보실보룹鑒
ISNULL(TrustFilletJoint.TrustFilletJoint,0) AS TrustFilletJoint, --綠官辜실보룹鑒
CAST((CASE ISNULL(TrustFilletJoint.TrustFilletJoint,0) WHEN 0 THEN 0
ELSE 1.0 * ISNULL(TrustFilletJoint.TrustFilletJoint,0)/(1.0 * FilletJoint.FilletJoint) END) AS DECIMAL(19,3))
AS FilletJointCheckRate
FROM dbo.Project_Welder AS welder
LEFT JOIN Base_Project project on welder.ProjectId=project.ProjectId
LEFT JOIN dbo.HJGL_BS_Welder wld on wld.WED_ID=welder.WED_ID
--綠보보왯鑒
LEFT JOIN (SELECT COUNT(*) AS totalJoint,HJGL_pw_jointinfo.JOT_CellWelder,ProjectId
FROM HJGL_PW_JointInfo
WHERE HJGL_pw_jointinfo.DReportID is not null
GROUP BY HJGL_pw_jointinfo.JOT_CellWelder,ProjectId) AS totalJoint ON totalJoint.JOT_CellWelder = welder.WED_ID and totalJoint.ProjectId=welder.ProjectId
--綠보미땍왯鑒
LEFT JOIN (SELECT COUNT(*) AS FixedJoint,JOT_CellWelder,ProjectId
FROM HJGL_PW_JointInfo
WHERE DReportID is not null AND JOT_JointAttribute='미땍'
GROUP BY HJGL_pw_jointinfo.JOT_CellWelder,ProjectId) AS FixedJoint ON FixedJoint.JOT_CellWelder = welder.WED_ID and FixedJoint.ProjectId=welder.ProjectId
--綠보뚤쌈보룹鑒
LEFT JOIN (SELECT COUNT(*) AS ButtJoint,joint.JOT_CellWelder,ProjectId
FROM HJGL_PW_JointInfo joint
LEFT JOIN dbo.HJGL_BS_JointType jointType on jointType.JOTY_ID=joint.JOTY_ID
WHERE DReportID is not null AND jointType.JOTY_Group='1'
GROUP BY joint.JOT_CellWelder,ProjectId) AS ButtJoint ON ButtJoint.JOT_CellWelder = welder.WED_ID and ButtJoint.ProjectId=welder.ProjectId
--綠보실보룹鑒
LEFT JOIN (SELECT COUNT(*) AS FilletJoint,joint.JOT_CellWelder,ProjectId
FROM HJGL_PW_JointInfo joint
LEFT JOIN dbo.HJGL_BS_JointType jointType on jointType.JOTY_ID=joint.JOTY_ID
WHERE DReportID is not null AND jointType.JOTY_Group='2'
GROUP BY joint.JOT_CellWelder,ProjectId) AS FilletJoint ON FilletJoint.JOT_CellWelder = welder.WED_ID and FilletJoint.ProjectId=welder.ProjectId
--綠官辜보왯鑒
LEFT JOIN (SELECT COUNT(*) AS TrustJointNum,joint.JOT_CellWelder,ProjectId
FROM dbo.HJGL_BO_BatchDetail batchDetail
LEFT JOIN HJGL_pw_jointinfo joint ON joint.jot_id=batchDetail.jot_id
WHERE (batchDetail.NDT is not null OR batchDetail.NDT!='') and joint.JOT_JointNo not like '%A%' and joint.JOT_JointNo not like '%B%' and batchDetail.PointType!='2'
GROUP BY joint.JOT_CellWelder,ProjectId) AS TrustJointNum ON TrustJointNum.JOT_CellWelder = welder.WED_ID and TrustJointNum.ProjectId=welder.ProjectId
--綠官辜미땍왯鑒
LEFT JOIN (SELECT COUNT(*) AS TrustFixedJoint,joint.JOT_CellWelder,ProjectId
FROM dbo.HJGL_BO_BatchDetail batchDetail
LEFT JOIN HJGL_pw_jointinfo joint ON joint.jot_id=batchDetail.jot_id
WHERE (batchDetail.NDT is not null OR batchDetail.NDT!='')
AND joint.JOT_JointAttribute='미땍' and joint.JOT_JointNo not like '%A%' and joint.JOT_JointNo not like '%B%' and batchDetail.PointType!='2'
GROUP BY joint.JOT_CellWelder,ProjectId) AS TrustFixedJoint ON TrustFixedJoint.JOT_CellWelder = welder.WED_ID and TrustFixedJoint.ProjectId=welder.ProjectId
--綠官辜뚤쌈보룹鑒
LEFT JOIN (SELECT COUNT(*) AS TrustButtJoint,joint.JOT_CellWelder,ProjectId
FROM dbo.HJGL_BO_BatchDetail batchDetail
LEFT JOIN HJGL_pw_jointinfo joint ON joint.jot_id=batchDetail.jot_id
LEFT JOIN dbo.HJGL_BS_JointType jointType on jointType.JOTY_ID=joint.JOTY_ID
WHERE (batchDetail.NDT is not null OR batchDetail.NDT!='')
AND jointType.JOTY_Group='1' and joint.JOT_JointNo not like '%A%' and joint.JOT_JointNo not like '%B%' and batchDetail.PointType!='2'
GROUP BY joint.JOT_CellWelder,ProjectId) AS TrustButtJoint ON TrustButtJoint.JOT_CellWelder = welder.WED_ID and TrustButtJoint.ProjectId=welder.ProjectId
--綠官辜실보룹鑒
LEFT JOIN (SELECT COUNT(*) AS TrustFilletJoint,joint.JOT_CellWelder,ProjectId
FROM dbo.HJGL_BO_BatchDetail batchDetail
LEFT JOIN HJGL_pw_jointinfo joint ON joint.jot_id=batchDetail.jot_id
LEFT JOIN dbo.HJGL_BS_JointType jointType on jointType.JOTY_ID=joint.JOTY_ID
WHERE (batchDetail.NDT is not null OR batchDetail.NDT!='')
AND jointType.JOTY_Group='2' and joint.JOT_JointNo not like '%A%' and joint.JOT_JointNo not like '%B%' and batchDetail.PointType!='2'
GROUP BY joint.JOT_CellWelder,ProjectId) AS TrustFilletJoint ON TrustFilletJoint.JOT_CellWelder = welder.WED_ID and TrustFilletJoint.ProjectId=welder.ProjectId
WHERE (welder.ProjectId = @projectId OR @projectId IS NULL)
AND (wld.WED_Unit=@unitcode OR @unitcode IS NULL)
AND (wld.WED_ID=@WED_ID OR @WED_ID is null)
order BY wld.WED_Code
GO
@@ -39,8 +39,8 @@
BoxConfigAlign="Stretch" BoxConfigPosition="Left" runat="server"> BoxConfigAlign="Stretch" BoxConfigPosition="Left" runat="server">
<Items> <Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="焊工焊接检测统计表" EnableCollapse="true" <f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="焊工焊接检测统计表" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="wed_code" AllowCellEditing="true" EnableColumnLines="true" runat="server" BoxFlex="1" DataKeyNames="ProjectWelderId" AllowCellEditing="true" EnableColumnLines="true"
ClicksToEdit="2" DataIDField="wed_code" AllowSorting="true" SortField="wed_code" ClicksToEdit="2" DataIDField="ProjectWelderId" AllowSorting="true" SortField="ProjectCode,wed_code"
SortDirection="ASC" OnSort="Grid1_Sort" AllowPaging="true" IsDatabasePaging="true" PageSize="15" SortDirection="ASC" OnSort="Grid1_Sort" AllowPaging="true" IsDatabasePaging="true" PageSize="15"
OnPageIndexChange="Grid1_PageIndexChange"> OnPageIndexChange="Grid1_PageIndexChange">
<Columns> <Columns>
@@ -52,9 +52,11 @@
<f:RenderField HeaderText="施工号" ColumnID="ProjectCode" DataField="ProjectCode" SortField="ProjectCode" <f:RenderField HeaderText="施工号" ColumnID="ProjectCode" DataField="ProjectCode" SortField="ProjectCode"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left" Width="100px"> FieldType="String" HeaderTextAlign="Center" TextAlign="Left" Width="100px">
</f:RenderField> </f:RenderField>
<f:RenderField HeaderText="焊工代码" ColumnID="wed_code" DataField="wed_code" SortField="wed_code" <f:TemplateField ColumnID="tfWelderCode" HeaderText="焊工代码" Width="100px" HeaderTextAlign="Center" TextAlign="Center">
FieldType="String" HeaderTextAlign="Center" TextAlign="Left" Width="100px"> <ItemTemplate>
</f:RenderField> <asp:Label ID="lblWelderCode" runat="server" Text=' <%# Bind("wed_code") %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField HeaderText="焊工名称" ColumnID="wed_name" DataField="wed_name" SortField="wed_name" <f:RenderField HeaderText="焊工名称" ColumnID="wed_name" DataField="wed_name" SortField="wed_name"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left" Width="90px"> FieldType="String" HeaderTextAlign="Center" TextAlign="Left" Width="90px">
</f:RenderField> </f:RenderField>
@@ -86,7 +86,7 @@ namespace FineUIPro.Web.HJGL.WeldingReport
SqlParameter[] parameter = listStr.ToArray(); SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunProc("HJGL_sp_rpt_welderStatistics", parameter); DataTable tb = SQLHelper.GetDataTableRunProc("HJGL_sp_rpt_welderStatistics", parameter);
this.Grid1.RecordCount = tb.Rows.Count; this.Grid1.RecordCount = tb.Rows.Count;
tb = GetFilteredTable(Grid1.FilteredData, tb); //tb = GetFilteredTable(Grid1.FilteredData, tb);
var table = this.GetPagedDataTable(Grid1, tb); var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table; Grid1.DataSource = table;
Grid1.DataBind(); Grid1.DataBind();
@@ -151,6 +151,8 @@ namespace FineUIPro.Web.HJGL.WeldingReport
Response.AddHeader("content-disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("焊工焊接检测统计表" + filename, System.Text.Encoding.UTF8) + ".xls"); Response.AddHeader("content-disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("焊工焊接检测统计表" + filename, System.Text.Encoding.UTF8) + ".xls");
Response.ContentType = "application/excel"; Response.ContentType = "application/excel";
Response.ContentEncoding = System.Text.Encoding.UTF8; Response.ContentEncoding = System.Text.Encoding.UTF8;
this.Grid1.PageSize = 100000;
this.BindGrid();
Response.Write(GetGridTableHtml(Grid1)); Response.Write(GetGridTableHtml(Grid1));
Response.End(); Response.End();
} }
@@ -181,7 +183,12 @@ namespace FineUIPro.Web.HJGL.WeldingReport
{ {
html = (row.FindControl("labNumber") as AspNet.Label).Text; html = (row.FindControl("labNumber") as AspNet.Label).Text;
} }
sb.AppendFormat("<td>{0}</td>", html); if (column.ColumnID == "tfWelderCode")
{
html = (row.FindControl("lblWelderCode") as AspNet.Label).Text;
}
//sb.AppendFormat("<td>{0}</td>", html);
sb.AppendFormat("<td style='vnd.ms-excel.numberformat:@;'>{0}</td>", html);
} }
sb.Append("</tr>"); sb.Append("</tr>");
@@ -2,15 +2,17 @@
// <自动生成> // <自动生成>
// 此代码由工具生成。 // 此代码由工具生成。
// //
// 对此文件的更改可能导致不正确的行为,并且如果 // 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,这些更改将丢失。 // 重新生成代码,则所做更改将丢失。
// </自动生成> // </自动生成>
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
namespace FineUIPro.Web.HJGL.WeldingReport { namespace FineUIPro.Web.HJGL.WeldingReport
{
public partial class WelderCheckStatistic { public partial class WelderCheckStatistic
{
/// <summary> /// <summary>
/// form1 控件。 /// form1 控件。
@@ -129,6 +131,15 @@ namespace FineUIPro.Web.HJGL.WeldingReport {
/// </remarks> /// </remarks>
protected global::System.Web.UI.WebControls.Label labNumber; protected global::System.Web.UI.WebControls.Label labNumber;
/// <summary>
/// lblWelderCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblWelderCode;
/// <summary> /// <summary>
/// ToolbarSeparator1 控件。 /// ToolbarSeparator1 控件。
/// </summary> /// </summary>