xinjiang/DataBase/版本日志/SGGLDB_V2024-07-24-001.sql

112 lines
7.2 KiB
MySQL
Raw Normal View History

2024-11-19 09:45:27 +08:00
ALTER TABLE Welder_TestApplication ADD OwnerNum NVARCHAR(50)
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'Welder_TestApplication', @level2type=N'COLUMN',@level2name=N'OwnerNum'
GO
ALTER TABLE [dbo].[Welder_TestApplication] WITH CHECK ADD CONSTRAINT [FK_Welder_TestApplication_Sys_User] FOREIGN KEY([ConUnitWeldingEngineer])
REFERENCES [dbo].[Sys_User] ([UserId])
GO
ALTER TABLE [dbo].[Welder_TestApplication] CHECK CONSTRAINT [FK_Welder_TestApplication_Sys_User]
GO
insert into Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
values('7CA6A244-F397-47E1-9A8A-E19489D983DA','<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̬ͳ<EFBFBD>Ʊ<EFBFBD>','HJGL/WeldingReport/WelderDynamicStatistics.aspx',190,'F3B157B7-9BEE-4150-80CB-087828F1C51D','Menu_HJGL',0,1,1)
GO
CREATE PROC [dbo].[sp_rpt_WelderDynamicStatistics]
@projectId NVARCHAR(50) = NULL,
@unitId NVARCHAR(50)=NULL
AS
/********<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̬ͳ<EFBFBD>Ʊ<EFBFBD>***********/
SELECT unit.UnitId,
unit.UnitName,
projectUnit.ProjectId,
ISNULL(total_count.total_count,0) AS total_count,--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ISNULL(PD_wait_exam.PD_wait_exam_count,0) AS PD_wait_exam_count,--<EFBFBD>ܵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ISNULL(PD_qualified_duty.PD_qualified_duty_count,0) AS PD_qualified_duty_count, --<EFBFBD>ܵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD>ڸ<EFBFBD>
ISNULl(PD_qualified_leave.PD_qualified_leave_count,0) AS PD_qualified_leave_count, --<EFBFBD>ܵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ISNULL(FE_wait_exam.FE_wait_exam_count,0) AS FE_wait_exam_count,--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ISNULL(FE_qualified_duty.FE_qualified_duty_count,0) AS FE_qualified_duty_count,--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD>ڸ<EFBFBD>
ISNULL(FE_qualified_leave.FE_qualified_leave_count,0) AS FE_qualified_leave_count,--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ISNULL(JG_wait_exam.JG_wait_exam_count,0) AS JG_wait_exam_count,--<EFBFBD>ֽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ISNULL(JG_qualified_duty.JG_qualified_duty_count,0) AS JG_qualified_duty_count,--<EFBFBD>ֻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD>ڸ<EFBFBD>
ISNULl(JG_qualified_leave.JG_qualified_leave_count,0) AS JG_qualified_leave_count,--<EFBFBD>ֽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ISNULL(TJ_wait_exam.TJ_wait_exam_count,0) AS TJ_wait_exam_count,--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
ISNULl(TJ_qualified_duty.TJ_qualified_duty_count,0) AS TJ_qualified_duty_count,--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD>ڸ<EFBFBD>
ISNULL(TJ_qualified_leave.TJ_qualified_leave_count,0) AS TJ_qualified_leave_count --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
FROM Base_Unit AS unit
LEFT JOIN Project_ProjectUnit AS projectUnit ON projectUnit.UnitId = unit.UnitId
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
LEFT JOIN (SELECT COUNT(*) AS total_count,ProjectId,ConUnit
FROM Welder_TestApplication
GROUP BY ProjectId,ConUnit) AS total_count ON total_count.ConUnit = unit.UnitId and total_count.ProjectId=projectUnit.ProjectId
--<EFBFBD>ܵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
LEFT JOIN (SELECT COUNT(*) AS PD_wait_exam_count,ProjectId,ConUnit
FROM Welder_TestApplication
WHERE Welder_TestApplication.WelderClass='<EFBFBD>ܵ<EFBFBD>' AND Welder_TestApplication.WelderCondition='<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
GROUP BY ProjectId,ConUnit) AS PD_wait_exam ON PD_wait_exam.ConUnit = unit.UnitId and PD_wait_exam.ProjectId=projectUnit.ProjectId
--<EFBFBD>ܵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ϸ<EFBFBD><EFBFBD>ڸ<EFBFBD>
LEFT JOIN (SELECT COUNT(*) AS PD_qualified_duty_count,ProjectId,ConUnit
FROM Welder_TestApplication
WHERE Welder_TestApplication.WelderClass='<EFBFBD>ܵ<EFBFBD>' AND Welder_TestApplication.WelderCondition='<EFBFBD>ϸ<EFBFBD><EFBFBD>ڸ<EFBFBD>'
GROUP BY ProjectId,ConUnit) AS PD_qualified_duty ON PD_qualified_duty.ConUnit = unit.UnitId and PD_qualified_duty.ProjectId=projectUnit.ProjectId
--<EFBFBD>ܵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
LEFT JOIN (SELECT COUNT(*) AS PD_qualified_leave_count,ProjectId,ConUnit
FROM Welder_TestApplication
WHERE Welder_TestApplication.WelderClass='<EFBFBD>ܵ<EFBFBD>' AND Welder_TestApplication.WelderCondition='<EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
GROUP BY ProjectId,ConUnit) AS PD_qualified_leave ON PD_qualified_leave.ConUnit = unit.UnitId and PD_qualified_leave.ProjectId=projectUnit.ProjectId
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
LEFT JOIN (SELECT COUNT(*) AS FE_wait_exam_count,ProjectId,ConUnit
FROM Welder_TestApplication
WHERE Welder_TestApplication.WelderClass='<EFBFBD>' AND Welder_TestApplication.WelderCondition='<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
GROUP BY ProjectId,ConUnit) AS FE_wait_exam ON FE_wait_exam.ConUnit = unit.UnitId and FE_wait_exam.ProjectId=projectUnit.ProjectId
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ϸ<EFBFBD><EFBFBD>ڸ<EFBFBD>
LEFT JOIN (SELECT COUNT(*) AS FE_qualified_duty_count,ProjectId,ConUnit
FROM Welder_TestApplication
WHERE Welder_TestApplication.WelderClass='<EFBFBD>' AND Welder_TestApplication.WelderCondition='<EFBFBD>ϸ<EFBFBD><EFBFBD>ڸ<EFBFBD>'
GROUP BY ProjectId,ConUnit) AS FE_qualified_duty ON FE_qualified_duty.ConUnit = unit.UnitId and FE_qualified_duty.ProjectId=projectUnit.ProjectId
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
LEFT JOIN (SELECT COUNT(*) AS FE_qualified_leave_count,ProjectId,ConUnit
FROM Welder_TestApplication
WHERE Welder_TestApplication.WelderClass='<EFBFBD>' AND Welder_TestApplication.WelderCondition='<EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
GROUP BY ProjectId,ConUnit) AS FE_qualified_leave ON FE_qualified_leave.ConUnit = unit.UnitId and FE_qualified_leave.ProjectId=projectUnit.ProjectId
--<EFBFBD>ֽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
LEFT JOIN (SELECT COUNT(*) AS JG_wait_exam_count,ProjectId,ConUnit
FROM Welder_TestApplication
WHERE Welder_TestApplication.WelderClass='<EFBFBD>' AND Welder_TestApplication.WelderCondition='<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
GROUP BY ProjectId,ConUnit) AS JG_wait_exam ON JG_wait_exam.ConUnit = unit.UnitId and JG_wait_exam.ProjectId=projectUnit.ProjectId
--<EFBFBD>ֽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ϸ<EFBFBD><EFBFBD>ڸ<EFBFBD>
LEFT JOIN (SELECT COUNT(*) AS JG_qualified_duty_count,ProjectId,ConUnit
FROM Welder_TestApplication
WHERE Welder_TestApplication.WelderClass='<EFBFBD>' AND Welder_TestApplication.WelderCondition='<EFBFBD>ϸ<EFBFBD><EFBFBD>ڸ<EFBFBD>'
GROUP BY ProjectId,ConUnit) AS JG_qualified_duty ON JG_qualified_duty.ConUnit = unit.UnitId and JG_qualified_duty.ProjectId=projectUnit.ProjectId
--<EFBFBD>ֽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
LEFT JOIN (SELECT COUNT(*) AS JG_qualified_leave_count,ProjectId,ConUnit
FROM Welder_TestApplication
WHERE Welder_TestApplication.WelderClass='<EFBFBD>' AND Welder_TestApplication.WelderCondition='<EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
GROUP BY ProjectId,ConUnit) AS JG_qualified_leave ON JG_qualified_leave.ConUnit = unit.UnitId and JG_qualified_leave.ProjectId=projectUnit.ProjectId
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
LEFT JOIN (SELECT COUNT(*) AS TJ_wait_exam_count,ProjectId,ConUnit
FROM Welder_TestApplication
WHERE Welder_TestApplication.WelderClass='<EFBFBD><EFBFBD><EFBFBD><EFBFBD>' AND Welder_TestApplication.WelderCondition='<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
GROUP BY ProjectId,ConUnit) AS TJ_wait_exam ON TJ_wait_exam.ConUnit = unit.UnitId and TJ_wait_exam.ProjectId=projectUnit.ProjectId
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ϸ<EFBFBD><EFBFBD>ڸ<EFBFBD>
LEFT JOIN (SELECT COUNT(*) AS TJ_qualified_duty_count,ProjectId,ConUnit
FROM Welder_TestApplication
WHERE Welder_TestApplication.WelderClass='<EFBFBD><EFBFBD><EFBFBD><EFBFBD>' AND Welder_TestApplication.WelderCondition='<EFBFBD>ϸ<EFBFBD><EFBFBD>ڸ<EFBFBD>'
GROUP BY ProjectId,ConUnit) AS TJ_qualified_duty ON TJ_qualified_duty.ConUnit = unit.UnitId and TJ_qualified_duty.ProjectId=projectUnit.ProjectId
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
LEFT JOIN (SELECT COUNT(*) AS TJ_qualified_leave_count,ProjectId,ConUnit
FROM Welder_TestApplication
WHERE Welder_TestApplication.WelderClass='<EFBFBD><EFBFBD><EFBFBD><EFBFBD>' AND Welder_TestApplication.WelderCondition='<EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
GROUP BY ProjectId,ConUnit) AS TJ_qualified_leave ON TJ_qualified_leave.ConUnit = unit.UnitId and TJ_qualified_leave.ProjectId=projectUnit.ProjectId
WHERE projectUnit.UnitType='2'
AND(projectUnit.ProjectId=@projectId OR @projectId IS NULL)
AND (unit.UnitId=@unitId OR @unitId IS NULL)
GO