This commit is contained in:
高飞 2026-01-05 09:37:33 +08:00
parent 07539fbcca
commit d2405e5e40
4 changed files with 113 additions and 4 deletions

View File

@ -0,0 +1,106 @@
ALTER PROC [dbo].[HJGL_sp_rpt_iso_analyze]
@unitNo VARCHAR(400) = NULL,
@isono VARCHAR(100) = NULL,
@steel varchar(50) = NULL,
@projectId NVARCHAR(50) = NULL,
@StartDate datetime =null,
@EndDate datetime =null
AS
/*焊接工作量统计 佘春生修改于2020.03.06*/
SELECT iso.ProjectId,iso.ISO_IsoNo,iso.PressureTestPackageNo,Unit.UnitCode AS bsu_unitcode, --
Unit.UnitName AS bsu_unitname, --
Project.ProjectCode as projectCode, --
'Φ'+cast(cast(ISO_Dia as FLOAT) as nvarchar(50))+'×'+cast(cast(ISO_Sch as FLOAT) as nvarchar(50)) as IsoDesc, --线
v.ISO_ID,v.total_jot,v.total_din,
ISNULL(v1.finished_total_jot,0) AS finished_total_jot,
ISNULL(v1.finished_total_din,0) AS finished_total_din,v1.maxdate,
ISNULL(v1.total_film,0) AS total_film,
ISNULL(v1.pass_film,0) AS pass_film,
CAST(CASE ISNULL(v1.total_film ,0) WHEN 0 THEN 0
ELSE 1.0*ISNULL(v1.pass_film,0) / (1.0 * v1.total_film) END AS DECIMAL(19,3))
AS passrate, --
ISNULL(v2.point_jot,0) AS point_jot,
ISNULL(v2.point_total_film,0) AS point_total_film,
ISNULL(v2.point_pass_film,0) AS point_pass_film,
CAST(CASE ISNULL(v2.point_total_film ,0) WHEN 0 THEN 0
ELSE 1.0*ISNULL(v2.point_pass_film,0) / (1.0 * v2.point_total_film) END AS DECIMAL(19,3))
AS point_passrate, --
ISNULL(v3.ext_jot,0) AS ext_jot,
ISNULL(v3.ext_total_film,0) AS ext_total_film,
ISNULL(v3.ext_pass_film,0) AS ext_pass_film,
CAST(CASE ISNULL(v3.ext_total_film ,0) WHEN 0 THEN 0
ELSE 1.0*ISNULL(v3.ext_pass_film,0) / (1.0 * v3.ext_total_film) END AS DECIMAL(19,3))
AS point_passrate, --
(ISNULL(v2.point_jot,0)+ISNULL(v3.ext_jot,0)) AS check_total_jot,
ISNULL(v4.total_repairjot,0) AS total_repairjot,
ISNULL(v5.trust_total_jot,0) AS trust_total_jot,
CAST(CASE ISNULL(v.total_jot,0) WHEN 0 THEN 0
ELSE 1.0*ISNULL(v2.point_jot,0) / (1.0 * v.total_jot) END AS DECIMAL(19,3))
AS trustrate, --
CAST(CASE ISNULL(v.total_jot,0) WHEN 0 THEN 0
ELSE 1.0*(ISNULL(v3.ext_jot,0) + ISNULL(v2.point_jot,0)) / (1.0 * v.total_jot)
END AS DECIMAL(19,3))
AS checkrate --
FROM
(SELECT ISO_ID, COUNT(JOT_ID) AS total_jot,SUM(ISNULL(JOT_Size,0)) AS total_din
FROM dbo.HJGL_PW_JointInfo
GROUP BY ISO_ID) v
LEFT JOIN
(SELECT ISO_ID, COUNT(JOT_ID) AS finished_total_jot,SUM(ISNULL(JOT_Size,0)) AS finished_total_din,
max(weldreport.JOT_WeldDate) AS maxdate, SUM(ISNULL(jot.RT_FilmNum,0)) AS total_film,
SUM(ISNULL(jot.RT_FilmNum,0)-ISNULL(jot.RT1_RepairFilmNum,0)) AS pass_film
FROM dbo.HJGL_PW_JointInfo jot
LEFT join HJGL_BO_WeldReportMain AS weldreport on weldreport.DReportID=jot.DReportID
WHERE (weldreport.JOT_WeldDate>=@StartDate or @StartDate is null) and (weldreport.JOT_WeldDate<=@EndDate or @EndDate is null)
AND jot.DReportID is not null
GROUP BY ISO_ID) v1 ON v1.ISO_ID=v.ISO_ID
LEFT JOIN
(SELECT ISO_ID, COUNT(jot.JOT_ID) AS point_jot,SUM(ISNULL(jot.RT_FilmNum,0)) AS point_total_film,
SUM(ISNULL(jot.RT_FilmNum,0)-ISNULL(jot.RT1_RepairFilmNum,0)) AS point_pass_film
FROM dbo.HJGL_PW_JointInfo jot
LEFT join HJGL_BO_WeldReportMain AS weldreport on weldreport.DReportID=jot.DReportID
WHERE (weldreport.JOT_WeldDate>=@StartDate or @StartDate is null) and (weldreport.JOT_WeldDate<=@EndDate or @EndDate is null)
AND jot.DReportID is not NULL AND jot.PointType='点口' or ((select top 1 CH_TrustItemID from HJGL_CH_TrustItem ti where ti.JOT_ID=jot.JOT_ID) is not null and jot.PointType is null)
GROUP BY ISO_ID) v2 ON v2.ISO_ID=v.ISO_ID
LEFT JOIN
(SELECT ISO_ID, COUNT(jot.JOT_ID) AS ext_jot,SUM(ISNULL(jot.RT_FilmNum,0)) AS ext_total_film,
SUM(ISNULL(jot.RT_FilmNum,0)-ISNULL(jot.RT1_RepairFilmNum,0)) AS ext_pass_film
FROM dbo.HJGL_PW_JointInfo jot
LEFT join HJGL_BO_WeldReportMain AS weldreport on weldreport.DReportID=jot.DReportID
WHERE (weldreport.JOT_WeldDate>=@StartDate or @StartDate is null) and (weldreport.JOT_WeldDate<=@EndDate or @EndDate is null)
AND jot.DReportID is not NULL AND jot.PointType='扩透'
GROUP BY ISO_ID) v3 ON v3.ISO_ID=v.ISO_ID
LEFT JOIN
(SELECT jot.ISO_ID, COUNT(distinct trust.JOT_ID) AS trust_total_jot --trust.CH_TrustItemID
FROM dbo.HJGL_CH_TrustItem trust
LEFT join dbo.HJGL_PW_JointInfo AS jot on jot.JOT_ID=trust.JOT_ID
LEFT join HJGL_BO_WeldReportMain AS weldreport on weldreport.DReportID=jot.DReportID
WHERE (weldreport.JOT_WeldDate>=@StartDate or @StartDate is null) and (weldreport.JOT_WeldDate<=@EndDate or @EndDate is null)
AND jot.DReportID is not NULL
GROUP BY jot.ISO_ID) v5 ON v5.ISO_ID=v.ISO_ID
LEFT JOIN
(SELECT ISO_ID,COUNT(DISTINCT(jot.JOT_ID)) AS total_repairjot
FROM dbo.HJGL_PW_JointInfo jot
LEFT join HJGL_BO_WeldReportMain AS weldreport on weldreport.DReportID=jot.DReportID
WHERE (weldreport.JOT_WeldDate>=@StartDate or @StartDate is null) and (weldreport.JOT_WeldDate<=@EndDate or @EndDate is null)
AND jot.DReportID is not NULL
AND(jot.RT1_RepairFilmNum IS NOT NULL OR jot.PTIsRepair1=1 OR jot.MTIsRepair1=1 OR jot.UTIsRepair1=1)
GROUP BY ISO_ID) v4 ON v4.ISO_ID=v.ISO_ID
LEFT JOIN dbo.HJGL_PW_IsoInfo iso ON iso.ISO_ID = v.ISO_ID
LEFT JOIN Base_Unit AS Unit ON Unit.UnitId = iso.BSU_ID
LEFT JOIN Base_Project AS Project ON Project.ProjectId = iso.ProjectId
WHERE (iso.ProjectId = @projectId OR @projectId IS NULL)
AND (iso.BSU_ID=@unitno OR @unitno IS NULL)
AND (iso.STE_ID=@steel OR @steel IS NULL)
AND (iso.ISO_IsoNo = @isono OR @isono IS NULL)
GO

View File

@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<UseIISExpress>true</UseIISExpress>
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
<Use64BitIISExpress />
<IISExpressSSLPort />
<IISExpressAnonymousAuthentication />

View File

@ -82,6 +82,9 @@
<f:RenderField HeaderText="单位名称" ColumnID="bsu_unitname" DataField="bsu_unitname" SortField="bsu_unitname"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left" Width="220px">
</f:RenderField>
<f:RenderField HeaderText="施工号" ColumnID="projectCode" DataField="projectCode" SortField="projectCode"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left" Width="220px">
</f:RenderField>
<f:RenderField HeaderText="管线号" ColumnID="iso_isono" DataField="iso_isono" SortField="iso_isono"
FieldType="String" HeaderTextAlign="Center" TextAlign="Left" Width="220px">
</f:RenderField>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
<NameOfLastUsedPublishProfile>FolderProfile</NameOfLastUsedPublishProfile>
<UseIISExpress>true</UseIISExpress>
<Use64BitIISExpress />