20210819单位人员考勤未知人员查询方法修改

This commit is contained in:
2021-08-19 18:33:20 +08:00
parent 33835b762e
commit 04202b8c1c
10 changed files with 119 additions and 80 deletions
@@ -0,0 +1,56 @@
select * from SitePerson_Person where ProjectId='7d4cce15-bc9b-4ed4-8b59-2edc8488528b'
and UnitId='1c1cc3ba-8654-4bac-b7e7-b45f4eec0dc9'
select * from base_project where projectname like '%ɽ¶«±õÖÝ%'
select * from Base_Unit where UnitName like '%Ê®ËÄ%'
delete from QualityAudit_PersonQuality where PersonId in
(select PersonId from SitePerson_Person
where ProjectId='7d4cce15-bc9b-4ed4-8b59-2edc8488528b' and UnitId='1c1cc3ba-8654-4bac-b7e7-b45f4eec0dc9'
and IdentityCard not in (select IdentityCard from Project_ProjectUser as p
left join Sys_User as u on p.UserId=u.UserId
where p.ProjectId='7d4cce15-bc9b-4ed4-8b59-2edc8488528b'
and p.UnitId='1c1cc3ba-8654-4bac-b7e7-b45f4eec0dc9'))
go
delete from EduTrain_TrainRecordDetail where PersonId in
(select PersonId from SitePerson_Person
where ProjectId='7d4cce15-bc9b-4ed4-8b59-2edc8488528b' and UnitId='1c1cc3ba-8654-4bac-b7e7-b45f4eec0dc9'
and IdentityCard not in (select IdentityCard from Project_ProjectUser as p
left join Sys_User as u on p.UserId=u.UserId
where p.ProjectId='7d4cce15-bc9b-4ed4-8b59-2edc8488528b'
and p.UnitId='1c1cc3ba-8654-4bac-b7e7-b45f4eec0dc9'))
go
delete from EduTrain_TrainRecord
where (select COUNT(*) from EduTrain_TrainRecordDetail where TrainingId =EduTrain_TrainRecord.TrainingId) =0
and ProjectId='7d4cce15-bc9b-4ed4-8b59-2edc8488528b' and UnitIds like '%1c1cc3ba-8654-4bac-b7e7-b45f4eec0dc9%'
go
delete from SitePerson_Checking where PersonId in
(select PersonId from SitePerson_Person
where ProjectId='7d4cce15-bc9b-4ed4-8b59-2edc8488528b' and UnitId='1c1cc3ba-8654-4bac-b7e7-b45f4eec0dc9'
and IdentityCard not in (select IdentityCard from Project_ProjectUser as p
left join Sys_User as u on p.UserId=u.UserId
where p.ProjectId='7d4cce15-bc9b-4ed4-8b59-2edc8488528b'
and p.UnitId='1c1cc3ba-8654-4bac-b7e7-b45f4eec0dc9'))
go
delete from SitePerson_PersonInOut where PersonId in
(select PersonId from SitePerson_Person
where ProjectId='7d4cce15-bc9b-4ed4-8b59-2edc8488528b' and UnitId='1c1cc3ba-8654-4bac-b7e7-b45f4eec0dc9'
and IdentityCard not in (select IdentityCard from Project_ProjectUser as p
left join Sys_User as u on p.UserId=u.UserId
where p.ProjectId='7d4cce15-bc9b-4ed4-8b59-2edc8488528b'
and p.UnitId='1c1cc3ba-8654-4bac-b7e7-b45f4eec0dc9'))
go
delete from SitePerson_Person
where ProjectId='7d4cce15-bc9b-4ed4-8b59-2edc8488528b' and UnitId='1c1cc3ba-8654-4bac-b7e7-b45f4eec0dc9'
and IdentityCard not in (select IdentityCard from Project_ProjectUser as p
left join Sys_User as u on p.UserId=u.UserId
where p.ProjectId='7d4cce15-bc9b-4ed4-8b59-2edc8488528b'
and p.UnitId='1c1cc3ba-8654-4bac-b7e7-b45f4eec0dc9')
delete from SitePerson_Person_Bak
where ProjectId='7d4cce15-bc9b-4ed4-8b59-2edc8488528b' and UnitId='1c1cc3ba-8654-4bac-b7e7-b45f4eec0dc9'
and IdentityCard not in (select IdentityCard from Project_ProjectUser as p
left join Sys_User as u on p.UserId=u.UserId
where p.ProjectId='7d4cce15-bc9b-4ed4-8b59-2edc8488528b'
and p.UnitId='1c1cc3ba-8654-4bac-b7e7-b45f4eec0dc9')
@@ -0,0 +1,6 @@
ALTER TABLE SitePerson_Checking ALTER COLUMN IdentityCard NVARCHAR(50)
GO
ALTER TABLE SitePerson_Checking ALTER COLUMN Address NVARCHAR(200)
GO
ALTER TABLE SitePerson_Checking ALTER COLUMN WorkAreaName NVARCHAR(200)
GO
@@ -0,0 +1,39 @@
ALTER PROC [dbo].[spInOutManHoursReport]
@projectId NVARCHAR(50),
@unitId NVARCHAR(max)= NULL,
@postId NVARCHAR(max)= NULL,
@startTime DATETIME = NULL,
@endTime DATETIME = NULL
AS
/*****************µ¥Î»¿¼ÇÚ****************/
SELECT CAST(NEWID() AS NVARCHAR(100)) AS ID
,T.ProjectId
,p.UnitId
,ISNULL((case when P.UnitId=''then null
else (case when u.ShortUnitName IS NOT NULL THEN u.ShortUnitName ELSE u.UnitName END) end),'δ֪') AS UnitName
,ISNULL((case when P.UnitId=''then null
else u.UnitName end),'δ֪') AS AllUnitName
,p.WorkPostId as PostId
,ISNULL((case when W.WorkPostName=''then null else W.WorkPostName end),'δ֪') AS PostName
,SUM(ISNULL(ManHours,0)) AS ManHoursSum
,COUNT(T.NewID) AS ManCountSum
,(SELECT COUNT(PersonId) FROM SitePerson_Person
WHERE ProjectId = T.ProjectId AND P.UnitId=UnitId AND P.WorkPostId=WorkPostId AND IsUsed=1 AND OutTime IS NOT NULL
group by ProjectId,UnitId,WorkPostId) AS PersonCountSum
FROM dbo.t_d_EmployInOutRecord AS T
LEFT JOIN dbo.SitePerson_Person AS P ON T.ProjectId=P.ProjectId AND T.IDCardNo=P.IdentityCard
LEFT JOIN dbo.Base_Unit AS U ON P.UnitId=U.UnitId
--LEFT JOIN dbo.ProjectData_TeamGroup AS Team ON P.TeamGroupId=Team.TeamGroupId
LEFT JOIN dbo.Base_WorkPost AS W ON P.WorkPostId=W.WorkPostId
WHERE T.ProjectId = @ProjectId
AND (RecordDate >= @startTime OR @startTime IS NULL)
AND (RecordDate <= @endTime OR @endTime IS NULL)
AND (@unitId like '%'+P.UnitId+'%' OR @unitId IS NULL)
AND (@postId like '%'+P.WorkPostId+'%' OR @postId IS NULL)
GROUP BY T.ProjectId,P.UnitId,U.UnitName,u.ShortUnitName,P.WorkPostId,W.WorkPostName
GO