62 lines
2.2 KiB
Transact-SQL
62 lines
2.2 KiB
Transact-SQL
ALTER VIEW [dbo].[View_SitePerson_Person]
|
|
AS
|
|
SELECT Person.PersonId,
|
|
Person.CardNo,
|
|
Person.PersonName,
|
|
Person.Sex,
|
|
(Case Person.Sex WHEN '1' THEN 'ÄÐ' WHEN '2' THEN 'Å®' ELSE '' END) AS SexName,
|
|
Person.IdentityCard,
|
|
Person.Address,
|
|
Person.ProjectId,
|
|
Person.UnitId,
|
|
Person.TeamGroupId,
|
|
Person.WorkAreaId,
|
|
Person.WorkPostId,
|
|
Person.InTime,
|
|
Person.OutTime,
|
|
Person.OutResult,
|
|
Person.Telephone,
|
|
Person.PositionId,
|
|
Person.PostTitleId,
|
|
Person.PhotoUrl,
|
|
Person.IsUsed,
|
|
(CASE Person.IsUsed WHEN 'TRUE' THEN 'ÊÇ' ELSE '·ñ' END) AS IsUsedName,
|
|
Person.IsCardUsed,
|
|
(CASE Person.IsCardUsed WHEN 'TRUE' THEN 'ÊÇ' ELSE '·ñ' END) AS IsCardUsedName,
|
|
Person.PersonIndex,
|
|
Project.ProjectCode,
|
|
Project.ProjectName,
|
|
Unit.UnitCode,
|
|
Unit.UnitName,
|
|
TeamGroup.TeamGroupName,
|
|
--WorkArea.UnitWorkCode AS WorkAreaCode,
|
|
WorkAreaCode= STUFF((SELECT ',' + UnitWorkCode FROM dbo.WBS_UnitWork where PATINDEX('%,' + RTRIM(UnitWorkId) + ',%',',' +Person.WorkAreaId + ',')>0 FOR XML PATH('')), 1, 1,''),
|
|
--WorkArea.UnitWorkName AS WorkAreaName
|
|
WorkAreaName= STUFF((SELECT ',' + UnitWorkName FROM dbo.WBS_UnitWork where PATINDEX('%,' + RTRIM(UnitWorkId) + ',%',',' +Person.WorkAreaId + ',')>0 FOR XML PATH('')), 1, 1,''),
|
|
Post.WorkPostName,
|
|
Position.PositionName,
|
|
Title.PostTitleName,
|
|
Depart.DepartName,
|
|
Post.PostType,
|
|
Post.IsHsse,
|
|
(SELECT COUNT(*) FROM EduTrain_TrainRecordDetail T WHERE T.PersonId=Person.PersonId) AS TrainCount,
|
|
Person.AuditorId,
|
|
sysUser.UserName AS AuditorName,
|
|
Person.AuditorDate,
|
|
Person.IDCardUrl,
|
|
Person.IsForeign,
|
|
Person.IsOutside
|
|
FROM SitePerson_Person AS Person
|
|
LEFT JOIN Base_Project AS Project ON Project.ProjectId=Person.ProjectId
|
|
LEFT JOIN Base_Unit AS Unit ON Unit.UnitId = Person.UnitId
|
|
LEFT JOIN ProjectData_TeamGroup AS TeamGroup ON TeamGroup.TeamGroupId=Person.TeamGroupId
|
|
--LEFT JOIN WBS_UnitWork AS WorkArea ON WorkArea.UnitWorkId = Person.WorkAreaId
|
|
LEFT JOIN Base_WorkPost AS Post ON Post.WorkPostId = Person.WorkPostId
|
|
LEFT JOIN Base_Position AS Position ON Position.PositionId = Person.PositionId
|
|
Left JOIN Base_PostTitle AS Title ON Title.PostTitleId = Person.PostTitleId
|
|
Left JOIN Base_Depart AS Depart ON Depart.DepartId = Person.DepartId
|
|
Left JOIN Sys_User AS sysUser ON sysUser.UserId = Person.AuditorId
|
|
GO
|
|
|
|
|