CNCEC_SUBQHSE_WUHUAN/DataBase/版本日志/SGGLDB_V2021-06-08-002.sql

92 lines
2.4 KiB
MySQL
Raw Normal View History

2021-06-18 20:37:07 +08:00
CREATE PROC [dbo].[SP_InOutList]
@projectId NVARCHAR(50) = NULL,
@unitId NVARCHAR(50) = NULL,
@name NVARCHAR(50) = NULL,
@type NVARCHAR(10)=NULL,
@startTime DATETIME = NULL,
@endTime DATETIME = NULL
AS
/*<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼*/
BEGIN
IF(@type='1')
BEGIN
SELECT NEWID
,ValidEventID AS ID
,V.ProjectId
,EmployName
,DepartmentID
,DepartmentName AS DepartName
,AreaID,AreaName
,EmployNO
,CAST(V.CardNO AS nvarchar(20)) AS CardID
,RecordDateTime AS DateTimeRecord
,RecordAll AS RecordDes
,(CASE WHEN InOrOut=2 THEN '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>' ELSE '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>' END) AS InOrOut
,P.UnitId
,P.TeamGroupId
FROM t_d_validcardevent V
LEFT JOIN SitePerson_Person AS P ON V.IDCardNo=P.IdentityCard AND V.ProjectId=P.ProjectId
WHERE V.ProjectId = @ProjectId
AND (RecordDateTime >= @startTime OR @startTime IS NULL)
AND (RecordDateTime <= @endTime OR @endTime IS NULL)
AND (P.UnitId = @unitId OR @unitId IS NULL)
AND (EmployName like ('%'+@name+'%') OR @name IS NULL)
ORDER BY RecordDateTime DESC
END
ELSE IF(@type='2')
BEGIN
SELECT NewID
,ID
,V.ProjectId
,EmployName
,DepartmentID
,DepartName
,AreaID
,AreaName
,EmployNO
,CAST(V.CardID AS nvarchar(20)) AS CardID
,RoleID
,DateTimeRecord
,RecordDes
,InOrOut
,P.UnitId,P.TeamGroupId
FROM t_d_facerecord V
LEFT JOIN SitePerson_Person AS P ON V.EmployNO=P.IdentityCard AND V.ProjectId=P.ProjectId
WHERE V.ProjectId = @ProjectId AND V.RoleID = '΢<EFBFBD>Ŷ<EFBFBD>'
AND (DateTimeRecord >= @startTime OR @startTime IS NULL)
AND (DateTimeRecord <= @endTime OR @endTime IS NULL)
AND (P.UnitId = @unitId OR @unitId IS NULL)
AND (EmployName like ('%'+@name+'%') OR @name IS NULL)
ORDER BY DateTimeRecord DESC
END
ELSE
BEGIN
SELECT NewID
,ID
,V.ProjectId
,EmployName
,DepartmentID
,DepartName
,AreaID
,AreaName
,EmployNO
,CAST(V.CardID AS nvarchar(20)) AS CardID
,RoleID
,DateTimeRecord
,RecordDes
,InOrOut
,P.UnitId,P.TeamGroupId
FROM t_d_facerecord V
LEFT JOIN SitePerson_Person AS P ON V.EmployNO=P.IdentityCard AND V.ProjectId=P.ProjectId
WHERE V.ProjectId = @ProjectId AND V.RoleID != '΢<EFBFBD>Ŷ<EFBFBD>'
AND (DateTimeRecord >= @startTime OR @startTime IS NULL)
AND (DateTimeRecord <= @endTime OR @endTime IS NULL)
AND (P.UnitId = @unitId OR @unitId IS NULL)
AND (EmployName like ('%'+@name+'%') OR @name IS NULL)
ORDER BY DateTimeRecord DESC
END
END
GO