SGGL_SHJ/DataBase/版本日志/已更新脚本/SGGLDB_V2022-09-08.sql

335 lines
18 KiB
MySQL
Raw Normal View History

2022-09-08 17:43:46 +08:00
ALTER VIEW [dbo].[View_SitePerson_Person]
AS
/*<EFBFBD>ֳ<EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD>ͼ*/
SELECT SitePerson.ProjectId,
Project.ProjectCode,
Project.ProjectName,
SitePerson.SitePersonId,
persons.PersonId,
SitePerson.CardNo,
Persons.PersonName,
Persons.Sex,
(Case Persons.Sex WHEN '1' THEN '<EFBFBD><EFBFBD>' WHEN '2' THEN 'Ů' ELSE '' END) AS SexName,
Persons.IdentityCard,
Persons.Address,
SitePerson.UnitId,
Persons.Birthday,
SitePerson.TeamGroupId,
SitePerson.WorkAreaId,
SitePerson.WorkPostId,
SitePerson.InTime,
SitePerson.OutTime,
SitePerson.OutResult,
Persons.Telephone,
Persons.PositionId,
Persons.PostTitleId,
Persons.PhotoUrl,
Unit.UnitCode,
Unit.UnitName,
TeamGroup.TeamGroupName,
Post.WorkPostName,
Position.PositionName,
Title.PostTitleName,
Depart.DepartName,
Post.PostType,
Post.IsHsse,
(SELECT COUNT(*) FROM EduTrain_TrainRecordDetail T
LEFT JOIN EduTrain_TrainRecord AS E ON T.TrainingId=E.TrainingId
WHERE T.PersonId=SitePerson.PersonId AND E.ProjectId=SitePerson.ProjectId) AS TrainCount,
(SELECT COUNT(*) FROM Training_TestRecord R
WHERE R.TestManId=SitePerson.PersonId AND R.ProjectId=SitePerson.ProjectId and R.TestScores > 80) AS TrainCount1,
SitePerson.AuditorId,
Persons.PersonName AS AuditorName,
SitePerson.AuditorDate,
Persons.IDCardUrl,
Persons.IsForeign,
case when Persons.IsForeign=1 then '<EFBFBD><EFBFBD>' else '<EFBFBD><EFBFBD>' end as IsForeignStr,
Persons.IdcardType,
BasicData1.dictName as IdcardTypeName,
Persons.IdcardStartDate,
Persons.IdcardEndDate,
Persons.IdcardForever,
case when Persons.IdcardForever='Y' then '<EFBFBD><EFBFBD>' else '<EFBFBD><EFBFBD>' end as IdcardForeverStr,
Persons.PoliticsStatus,
BasicData2.dictName as PoliticsStatusName,
Persons.IdcardAddress,
Persons.Nation,
BasicData3.dictName as NationName,
Persons.EduLevel,
BasicData4.dictName as EduLevelName,
Persons.MaritalStatus,
BasicData5.dictName as MaritalStatusName,
Persons.CountryCode,
Country.cname as CountryName,
Persons.ProvinceCode,
City.cname as ProvinceName,
Persons.PersonType,
(case when Persons.PersonType='2' then '<EFBFBD><EFBFBD>Ƹ' when Persons.PersonType='3' then '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' else 'Ա<EFBFBD><EFBFBD>' end) as IsOutsideStr,
--WorkArea.UnitWorkCode AS WorkAreaCode,
WorkAreaCode= STUFF((SELECT ',' + UnitWorkCode FROM dbo.WBS_UnitWork where PATINDEX('%,' + RTRIM(UnitWorkId) + ',%',',' +SitePerson.WorkAreaId + ',')>0 FOR XML PATH('')), 1, 1,''),
--WorkArea.UnitWorkName AS WorkAreaName
WorkAreaName= STUFF((SELECT ',' + UnitWorkName FROM dbo.WBS_UnitWork where PATINDEX('%,' + RTRIM(UnitWorkId) + ',%',',' +SitePerson.WorkAreaId + ',')>0 FOR XML PATH('')), 1, 1,''),
SitePerson.RealNameAddTime,
SitePerson.RealNameUpdateTime,
Persons.HeadImage,
SitePerson.States
FROM SitePerson_Person AS SitePerson
LEFT JOIN Person_Persons AS Persons ON SitePerson.PersonId=Persons.PersonId
LEFT JOIN Base_Project AS Project ON Project.ProjectId=SitePerson.ProjectId
LEFT JOIN Base_Unit AS Unit ON Unit.UnitId = SitePerson.UnitId
LEFT JOIN ProjectData_TeamGroup AS TeamGroup ON TeamGroup.TeamGroupId=SitePerson.TeamGroupId
LEFT JOIN Base_WorkPost AS Post ON Post.WorkPostId = SitePerson.WorkPostId
LEFT JOIN Base_Position AS Position ON Position.PositionId = Persons.PositionId
Left JOIN Base_PostTitle AS Title ON Title.PostTitleId = Persons.PostTitleId
Left JOIN Base_Depart AS Depart ON Depart.DepartId = Persons.DepartId
Left JOIN RealName_BasicData AS BasicData1 ON BasicData1.dictCode = Persons.IdcardType
Left JOIN RealName_BasicData AS BasicData2 ON BasicData2.dictCode = Persons.PoliticsStatus
Left JOIN RealName_BasicData AS BasicData3 ON BasicData3.dictCode = Persons.Nation
Left JOIN RealName_BasicData AS BasicData4 ON BasicData4.dictCode = Persons.EduLevel
Left JOIN RealName_BasicData AS BasicData5 ON BasicData5.dictCode = Persons.MaritalStatus
Left JOIN RealName_Country AS Country ON Country.CountryId = Persons.CountryCode
Left JOIN RealName_City AS City ON City.provinceCode = Persons.ProvinceCode and City.CountryId = Persons.CountryCode
GO
2022-09-09 09:53:55 +08:00
alter table PHTGL_Contract add Status int
alter table PHTGL_Contract add ContactUnitOfPartyA [varchar](50)
alter table PHTGL_Contract add ContactPersonOfPartyA [varchar](50)
alter table PHTGL_Contract add ContactPersonOfPartyB [varchar](50)
alter table PHTGL_Contract add ContactPersonPhoneOfPartyB [varchar](50)
alter table PHTGL_Contract add ContactPersonEmailOfPartyB [varchar](50)
alter table PHTGL_Contract add ContractAmountExcludingTax [decimal](18, 2)
alter table PHTGL_Contract add PriceMethod [varchar](50)
alter table PHTGL_Contract add SignedOnDate date
alter table PHTGL_Contract add ContractStartDate date
alter table PHTGL_Contract add ContractEndDate date
alter table PHTGL_Contract add PricingBasis [varchar](50)
alter table PHTGL_Contract add SubcontractingMethod [varchar](50)
alter table PHTGL_Contract add IsItACentralizedPurchaseSupplier int
GO
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD><EFBFBD>ͬ״̬' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'PHTGL_Contract', @level2type=N'COLUMN',
@level2name=N'Status'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD>׷<EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>λ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'PHTGL_Contract', @level2type=N'COLUMN',
@level2name=N'ContactUnitOfPartyA'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD>׷<EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'PHTGL_Contract', @level2type=N'COLUMN',
@level2name=N'ContactPersonOfPartyA'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD>ҷ<EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'PHTGL_Contract', @level2type=N'COLUMN',
@level2name=N'ContactPersonOfPartyB'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD>ҷ<EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD>˵绰' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'PHTGL_Contract', @level2type=N'COLUMN',
@level2name=N'ContactPersonPhoneOfPartyB'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD>ҷ<EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'PHTGL_Contract', @level2type=N'COLUMN',
@level2name=N'ContactPersonEmailOfPartyB'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>˰<EFBFBD><EFBFBD><EFBFBD><EFBFBD>' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'PHTGL_Contract', @level2type=N'COLUMN',
@level2name=N'ContractAmountExcludingTax'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD>Ƽ۷<EFBFBD>ʽ' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'PHTGL_Contract', @level2type=N'COLUMN',
@level2name=N'PriceMethod'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'ǩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'PHTGL_Contract', @level2type=N'COLUMN',
@level2name=N'SignedOnDate'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'PHTGL_Contract', @level2type=N'COLUMN',
@level2name=N'ContractStartDate'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD>ֹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'PHTGL_Contract', @level2type=N'COLUMN',
@level2name=N'ContractEndDate'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'PHTGL_Contract', @level2type=N'COLUMN',
@level2name=N'PricingBasis'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD>ְ<EFBFBD>ģʽ 1-<2D>ڲ<EFBFBD><DAB2>ְ<EFBFBD><D6B0><EFBFBD>2-<2D>ⲿ<EFBFBD>ְ<EFBFBD>' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'PHTGL_Contract', @level2type=N'COLUMN',
@level2name=N'SubcontractingMethod'
GO
EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'<EFBFBD>ҷ<EFBFBD><EFBFBD>Ƿ<EFBFBD>Ϊ<EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD>Ӧ<EFBFBD><EFBFBD>/<2F>ְ<EFBFBD><D6B0><EFBFBD> 0-<2D><><EFBFBD><EFBFBD>1-<2D><>' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'PHTGL_Contract', @level2type=N'COLUMN',
@level2name=N'IsItACentralizedPurchaseSupplier'
GO
ALTER PROC [dbo].[sp_rpt_WelderFirstPassRate]
@unitcode NVARCHAR(50) = NULL, --<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
@detectionTypeId NVARCHAR(50) = NULL, --̽<EFBFBD><EFBFBD>
@UnitWork NVARCHAR(50) = NULL, --
@MaterialCode NVARCHAR(50) = NULL, --<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
@SingleName NVARCHAR(50) = NULL, --<EFBFBD>ھ<EFBFBD>
@Thickness NVARCHAR(50) = NULL, --<EFBFBD>ں<EFBFBD>
@Specification NVARCHAR(50) = NULL, --<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
@WeldTypeCode NVARCHAR(50) = NULL, --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
@JointAttribute NVARCHAR(50) = NULL, --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
@PersonName NVARCHAR(50) = NULL, --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
@date1 DATETIME = NULL,
@date2 DATETIME = NULL,
@projectId NVARCHAR(50) = NULL
AS
/*<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
SELECT
welder.ProjectId,
welder.WelderCode,-- <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
welder.PersonName,--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
unit.UnitName, --ʩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ
welder.CertificateLimitTime, --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD><EFBFBD>
welder.WelderLevel, --<EFBFBD><EFBFBD><EFBFBD>ʵȼ<EFBFBD>
-------------<EFBFBD><EFBFBD><EFBFBD><EFBFBD>start
CAST(ISNULL(nowtotal.nowtotal_din,0) AS DECIMAL(19,2)) AS nowtotal_din, --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܴ<EFBFBD><EFBFBD><EFBFBD>ֵ
ISNULL(nowtotal.nowtotal_jot,0) AS nowtotal_jot, --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܺ<EFBFBD><EFBFBD><EFBFBD>
ISNULL(oneCheck.OneCheckJotNum,0) AS OneCheckJotNum, -- һ<>μ<EFBFBD><CEBC><EFBFBD><E2BAB8><EFBFBD><EFBFBD>
(ISNULL(oneCheck.OneCheckJotNum,0)-ISNULL(oneCheckRepair.OneCheckRepairJotNum,0)) AS OneCheckPassJotNum,--һ<EFBFBD>μ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ񺸿<EFBFBD><EFBFBD><EFBFBD>
CONVERT(NVARCHAR(10),(CAST((CASE ISNULL(oneCheck.OneCheckJotNum,0) WHEN 0 THEN 0
ELSE 100.0 * (ISNULL(oneCheck.OneCheckJotNum,0)-ISNULL(oneCheckRepair.oneCheckRepairJotNum,0))/(1.0 * oneCheck.OneCheckJotNum) END) AS DECIMAL(8,1))))+'%' AS passRate, -- <20>ϸ<EFBFBD><CFB8>ʣ<EFBFBD><CAA3><EFBFBD><EFBFBD>ڣ<EFBFBD>
ISNULL(oneCheck.OneCheckTotalFilm,0) AS OneCheckTotalFilm, --һ<EFBFBD>μ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ISNULL(oneCheck.OneCheckPassFilm,0) AS OneCheckPassFilm, --һ<EFBFBD>μ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD>Ƭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
CONVERT(NVARCHAR(10),(CAST((CASE ISNULL(oneCheck.OneCheckTotalFilm,0) WHEN 0 THEN 0
ELSE 100.0 * ISNULL(oneCheck.OneCheckPassFilm,0)/(1.0 * oneCheck.OneCheckTotalFilm) END) AS DECIMAL(8,1))))+'%'
AS passfilmrate ---RT<EFBFBD>ϸ<EFBFBD><EFBFBD>ʣ<EFBFBD>Ƭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
FROM SitePerson_Person AS welder
LEFT JOIN dbo.Base_Unit unit ON unit.UnitId = welder.UnitId
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܴ<EFBFBD><EFBFBD><EFBFBD>ֵ --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܺ<EFBFBD><EFBFBD><EFBFBD>
LEFT JOIN (SELECT SUM(jot.Size) AS nowtotal_din
,COUNT(*) AS nowtotal_jot
,jot.CoverWelderId
FROM dbo.HJGL_WeldJoint jot
LEFT JOIN dbo.HJGL_Pipeline pipe ON pipe.PipelineId = jot.PipelineId
LEFT JOIN dbo.HJGL_WeldingDaily daily ON daily.WeldingDailyId = jot.WeldingDailyId
LEFT JOIN WBS_UnitWork area ON area.UnitWorkId = pipe.UnitWorkId
LEFT JOIN dbo.Base_Material AS mat ON mat.MaterialId=pipe.MaterialId
WHERE jot.WeldingDailyId IS NOT NULL
AND (daily.WeldingDate >= @date1 OR @date1 IS NULL)
AND (daily.WeldingDate <= @date2 OR @date2 IS NULL)
AND (pipe.UnitWorkId=@UnitWork OR @UnitWork IS NULL) --<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
AND (mat.MaterialCode like @MaterialCode OR @MaterialCode IS NULL) --<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
And (pipe.SingleName like @SingleName OR @SingleName IS NULL) --<EFBFBD>
GROUP BY jot.CoverWelderId) AS nowtotal ON nowtotal.CoverWelderId = welder.PersonId
--<EFBFBD><EFBFBD><EFBFBD>ڼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
LEFT JOIN (SELECT jot.CoverWelderId,COUNT(ndeItem.NDEItemID) AS OneCheckJotNum, --һ<EFBFBD>μ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SUM(ISNULL(ndeItem.TotalFilm,0)) AS OneCheckTotalFilm, --һ<EFBFBD>μ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SUM(ISNULL(ndeItem.PassFilm,0)) AS OneCheckPassFilm --һ<EFBFBD>μ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD>Ƭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
FROM dbo.HJGL_Batch_NDEItem ndeItem
LEFT JOIN dbo.HJGL_Batch_BatchTrustItem trustItem ON trustItem.TrustBatchItemId = ndeItem.TrustBatchItemId
LEFT JOIN dbo.HJGL_WeldJoint jot ON jot.WeldJointId = trustItem.WeldJointId
LEFT JOIN dbo.HJGL_WeldingDaily daily ON daily.WeldingDailyId = jot.WeldingDailyId
LEFT JOIN dbo.HJGL_Batch_PointBatchItem pointItem ON pointItem.PointBatchItemId = trustItem.PointBatchItemId
LEFT JOIN dbo.HJGL_Batch_PointBatch point ON point.PointBatchId = pointItem.PointBatchId
LEFT JOIN Base_WeldType AS WeldType ON WeldType.WeldTypeId=jot.WeldTypeId
WHERE pointItem.PointDate IS NOT NULL AND pointItem.PointState=1 AND trustItem.RepairRecordId IS NULL
AND (point.DetectionTypeId=@detectionTypeId OR @detectionTypeId IS NULL) --<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
AND (jot.Thickness like @Thickness OR @Thickness IS NULL) --<EFBFBD>ں<EFBFBD>
AND (jot.Specification like @Specification OR @Specification IS NULL) --<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
AND (WeldType.WeldTypeCode like @WeldTypeCode OR @WeldTypeCode IS NULL) --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
AND (jot.JointAttribute = @JointAttribute OR @JointAttribute IS NULL) --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
AND (daily.WeldingDate >= @date1 OR @date1 IS NULL)
AND (daily.WeldingDate <= @date2 OR @date2 IS NULL)
GROUP BY jot.CoverWelderId) AS oneCheck ON oneCheck.CoverWelderId = welder.PersonId
LEFT JOIN (SELECT jot.CoverWelderId,COUNT(ndeItem.NDEItemID) AS OneCheckRepairJotNum --һ<EFBFBD>μ<EFBFBD><EFBFBD><EFBFBD>޺<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
FROM dbo.HJGL_Batch_NDEItem ndeItem
LEFT JOIN dbo.HJGL_Batch_BatchTrustItem trustItem ON trustItem.TrustBatchItemId = ndeItem.TrustBatchItemId
LEFT JOIN dbo.HJGL_WeldJoint jot ON jot.WeldJointId = trustItem.WeldJointId
LEFT JOIN dbo.HJGL_WeldingDaily daily ON daily.WeldingDailyId = jot.WeldingDailyId
LEFT JOIN dbo.HJGL_Batch_PointBatchItem pointItem ON pointItem.PointBatchItemId = trustItem.PointBatchItemId
LEFT JOIN dbo.HJGL_Batch_PointBatch point ON point.PointBatchId = pointItem.PointBatchId
WHERE pointItem.PointDate IS NOT NULL AND pointItem.PointState=1
AND trustItem.RepairRecordId IS NULL AND ndeItem.CheckResult='2'
AND (point.DetectionTypeId=@detectionTypeId OR @detectionTypeId IS NULL) --<EFBFBD><EFBFBD>ʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
AND (daily.WeldingDate >= @date1 OR @date1 IS NULL)
AND (daily.WeldingDate <= @date2 OR @date2 IS NULL)
GROUP BY jot.CoverWelderId) AS oneCheckRepair ON oneCheckRepair.CoverWelderId = welder.PersonId
WHERE
(welder.WelderCode IS NOT NULL AND welder.WelderCode!='')
AND (welder.ProjectId = @projectId OR @projectId IS NULL)
AND (welder.UnitId=@unitcode OR @unitcode IS NULL)
AND (welder.PersonName like @PersonName OR @PersonName IS NULL) --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
AND (welder.WorkPostId='19B8F2A9-28D3-4F20-867A-1B2237C2E228')
ORDER BY welder.WelderCode
GO
ALTER PROCEDURE [dbo].[HJGL_rpt_CheckDefects]
(
@projectId NVARCHAR(50),
@unitcode NVARCHAR(50) = NULL, --<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
@UnitWork NVARCHAR(50) = NULL, --
@MaterialCode NVARCHAR(50) = NULL, --<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
@SingleName NVARCHAR(50) = NULL, --<EFBFBD>ھ<EFBFBD>
@Thickness NVARCHAR(50) = NULL, --<EFBFBD>ں<EFBFBD>
@Specification NVARCHAR(50) = NULL, --<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
@WeldTypeCode NVARCHAR(50) = NULL, --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
@JointAttribute NVARCHAR(50) = NULL, --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
@PersonName NVARCHAR(50) = NULL --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
)
AS
SELECT n.*,UnitWork.UnitWorkName,UnitWork.UnitWorkCode
FROM
(SELECT m.ProjectId,m.UnitWorkId,SUM(Defect1) AS Defect1,SUM(Defect2) AS Defect2,SUM(Defect3) AS Defect3,
SUM(Defect4) AS Defect4,SUM(Defect5) AS Defect5,SUM(Defect6) AS Defect6,SUM(Defect7) AS Defect7,
SUM(Defect8) AS Defect8,SUM(Defect9) AS Defect9,SUM(Defect10) AS Defect10,SUM(Defect11) AS Defect11,
SUM(Defect12) AS Defect12,SUM(Defect13) AS Defect13,SUM(Defect14) AS Defect14,SUM(Defect15) AS Defect15,
SUM(Defect16) AS Defect16,SUM(Defect17) AS Defect17,SUM(Defect18) AS Defect18,
SUM(Defect19) AS Defect19,SUM(Defect20) AS Defect20,SUM(Defect21) AS Defect21
FROM
(SELECT t.ProjectId,t.UnitWorkId,
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t.DefectsName)>0) AS 'Defect1',
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t.DefectsName)>0) AS 'Defect2',
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t.DefectsName)>0) AS 'Defect3',
(SELECT COUNT(*) WHERE CHARINDEX('δ<EFBFBD><EFBFBD>͸',t.DefectsName)>0) AS 'Defect4',
(SELECT COUNT(*) WHERE CHARINDEX('δ<EFBFBD>ۺ<EFBFBD>',t.DefectsName)>0) AS 'Defect5',
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t.DefectsName)>0) AS 'Defect6',
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t.DefectsName)>0) AS 'Defect7',
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t.DefectsName)>0) AS 'Defect8',
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t.DefectsName)>0) AS 'Defect9',
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t.DefectsName)>0) AS 'Defect10',
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t.DefectsName)>0) AS 'Defect11',
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD>ڰ<EFBFBD>',t.DefectsName)>0) AS 'Defect12',
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ҧ<EFBFBD><EFBFBD>',t.DefectsName)>0) AS 'Defect13',
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t.DefectsName)>0) AS 'Defect14',
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t.DefectsName)>0) AS 'Defect15',
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t.DefectsName)>0) AS 'Defect16',
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t.DefectsName)>0) AS 'Defect17',
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD><EFBFBD>϶<EFBFBD><EFBFBD><EFBFBD><EFBFBD>1~3mm',t.DefectsName)>0) AS 'Defect18',
(SELECT COUNT(*) WHERE CHARINDEX('ԭ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t.DefectsName)>0) AS 'Defect19',
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t.DefectsName)>0) AS 'Defect20',
(SELECT COUNT(*) WHERE CHARINDEX('<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',t.DefectsName)>0) AS 'Defect21'
FROM
(SELECT dbo.HJGL_Fun_CheckDefects(item.CheckDefects) AS DefectsName,
nde.ProjectId ,nde.UnitWorkId
FROM dbo.HJGL_Batch_NDEItem item
LEFT JOIN dbo.HJGL_Batch_NDE nde ON nde.NDEID = item.NDEID
left join View_Batch_NDEItem vbn on vbn.NDEID=item.NDEID
left join View_HJGL_Pipeline pipe on pipe.PipelineCode=vbn.PipelineCode
left join View_HJGL_WeldJoint jot on jot.WeldJointId=vbn.WeldJointId
left join SitePerson_Person person on person.WelderCode =vbn.WelderCode
WHERE (item.CheckDefects IS NOT NULL )
AND (item.CheckDefects!='')
AND (pipe.UnitWorkId=@UnitWork OR @UnitWork IS NULL) --<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
AND (pipe.MaterialCode like @MaterialCode OR @MaterialCode IS NULL) --<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
And (pipe.SingleName like @SingleName OR @SingleName IS NULL) --<EFBFBD>
AND (jot.Thickness like @Thickness OR @Thickness IS NULL) --<EFBFBD>ں<EFBFBD>
AND (jot.Specification like @Specification OR @Specification IS NULL) --<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
AND (jot.WeldTypeCode like @WeldTypeCode OR @WeldTypeCode IS NULL) --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
AND (jot.JointAttribute = @JointAttribute OR @JointAttribute IS NULL) --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
AND (person.PersonName like @PersonName OR @PersonName IS NULL) --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
) t
) m GROUP BY m.ProjectId,m.UnitWorkId
) n
LEFT JOIN dbo.WBS_UnitWork UnitWork ON UnitWork.UnitWorkId = n.UnitWorkId
WHERE n.ProjectId = @projectId
GO