61 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			MySQL
		
	
	
	
		
		
			
		
	
	
			61 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			MySQL
		
	
	
	
|  | ALTER PROCEDURE [dbo].[SpCheckDayStatistic]     
 | |||
|  | 	@ProjectId NVARCHAR(50),
 | |||
|  | 	@StartTime NVARCHAR(15)=NULL,        
 | |||
|  | 	@EndTime NVARCHAR(15)=NULL,
 | |||
|  | 	@States CHAR(1)=NULL,
 | |||
|  | 	@UnitName NVARCHAR(200)=NULL,
 | |||
|  | 	@WorkAreaName NVARCHAR(200)=NULL
 | |||
|  | AS  
 | |||
|  | /*<EFBFBD>ճ<EFBFBD>Ѳ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/          
 | |||
|  | BEGIN
 | |||
|  | SELECT 	CheckDayDetail.CheckDayDetailId
 | |||
|  | 	,CheckDay.CheckDayId
 | |||
|  | 	,CheckDay.CheckDayId+','+ISNULL(CheckDayDetail.CheckDayDetailId,'') AS NewChcekId
 | |||
|  | 	,CodeRecords.Code AS CheckDayCode
 | |||
|  | 	,ISNULL(Checks.CheckCount,0) AS CheckCount	
 | |||
|  | 	,CheckDayDetail.WorkArea
 | |||
|  | 	,Unit.UnitName
 | |||
|  | 	,CheckDayDetail.CompleteStatus
 | |||
|  | 	,(CASE WHEN CheckDayDetail.CompleteStatus=1 THEN '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' ELSE '' END) AS CompleteStatusName
 | |||
|  | 	,CONVERT(VARCHAR(100), CheckDayDetail.LimitedDate, 23) AS LimitedDate
 | |||
|  | 	,CheckDayDetail.CompletedDate
 | |||
|  | 	,CheckDay.CheckPerson
 | |||
|  | 	,CONVERT(VARCHAR(100), CheckDay.CheckTime, 23) AS CheckTime
 | |||
|  | 	--,CheckDay.CheckTime
 | |||
|  | 	,CheckDayDetail.CheckItemType
 | |||
|  | 	,CheckDayDetail.CheckItem
 | |||
|  | 	,CheckDayDetail.HandleStep
 | |||
|  | 	,CheckDayDetail.Unqualified
 | |||
|  | 	,(CASE WHEN CheckDay.States='0' OR CheckDay.States IS NULL THEN '<EFBFBD><EFBFBD>['+ISNULL(OperateUser.UserName,Users.UserName)+']<5D>ύ' WHEN CheckDay.States='2' THEN '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' ELSE '<EFBFBD><EFBFBD>['+OperateUser.UserName+']<5D><><EFBFBD><EFBFBD>' END) AS  FlowOperateName
 | |||
|  | 	,CheckPersonUsers.UserName AS CheckPersonName
 | |||
|  | 	,person.PersonName
 | |||
|  | 	,CheckDayDetail.HiddenDangerType
 | |||
|  | 	,CheckDayDetail.HiddenDangerLevel
 | |||
|  | 	,checkDayDetail.Suggestions
 | |||
|  | FROM Check_CheckDay AS CheckDay 
 | |||
|  | LEFT JOIN Sys_CodeRecords AS CodeRecords ON CheckDay.CheckDayId=CodeRecords.DataId
 | |||
|  | LEFT JOIN Check_CheckDayDetail AS CheckDayDetail ON CheckDayDetail.CheckDayId = CheckDay.CheckDayId AND  CheckDayDetail.CheckDayDetailId IS NOT NULL 
 | |||
|  | --LEFT JOIN ProjectData_WorkArea AS WorkArea on WorkArea.WorkAreaId=CheckDayDetail.CheckArea        
 | |||
|  | LEFT JOIN Base_Unit AS Unit ON Unit.UnitId=CheckDayDetail.UnitId        
 | |||
|  | LEFT JOIN (SELECT COUNT(*)  AS CheckCount, CheckDayId 
 | |||
|  | 			FROM Check_CheckDayDetail GROUP BY CheckDayId) AS Checks ON Checks.CheckDayId = CheckDay.CheckDayId 
 | |||
|  | LEFT JOIN Sys_FlowOperate AS FlowOperate ON CheckDay.CheckDayId=FlowOperate.DataId AND FlowOperate.IsClosed <> 1
 | |||
|  | LEFT JOIN Sys_User AS OperateUser ON FlowOperate.OperaterId=OperateUser.UserId
 | |||
|  | LEFT JOIN Sys_User AS Users ON CheckDay.CompileMan=Users.UserId
 | |||
|  | LEFT JOIN Sys_User AS CheckPersonUsers ON CheckDay.CheckPerson=CheckPersonUsers.UserId
 | |||
|  | LEFT JOIN dbo.SitePerson_Person AS person ON person.PersonId = CheckDayDetail.PersonId
 | |||
|  | WHERE  (@StartTime IS NULL OR CheckDay.CheckTime>=@StartTime) 
 | |||
|  | 		AND (@EndTime IS NULL OR CheckDay.CheckTime <=@EndTime ) 
 | |||
|  | 		AND CheckDay.ProjectId=@ProjectId
 | |||
|  | 		AND (@States IS NULL OR CheckDay.States=@States) 
 | |||
|  | 		AND (@UnitName IS NULL OR Unit.UnitName LIKE '%'+@UnitName+'%' ) 
 | |||
|  | 		AND (@WorkAreaName IS NULL OR CheckDayDetail.WorkArea LIKE '%'+@WorkAreaName+'%' ) 
 | |||
|  | ORDER BY CheckDayCode DESC
 | |||
|  |    
 | |||
|  | END
 | |||
|  | 
 | |||
|  | 
 | |||
|  | GO
 | |||
|  | 
 | |||
|  | 
 |