204 lines
		
	
	
		
			8.6 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
			
		
		
	
	
			204 lines
		
	
	
		
			8.6 KiB
		
	
	
	
		
			Transact-SQL
		
	
	
	
| CREATE PROCEDURE [dbo].[Sp_GJSX_getlist] 
 | |
| 	-- Add the parameters for the stored procedure here
 | |
| 	 @ProjectId nvarchar(max),
 | |
| 	 @sql_where varchar(max)	
 | |
| AS
 | |
| BEGIN
 | |
| 		IF EXISTS(select * from tempdb..sysobjects where id=object_id('tempdb..#GJSX_List'))
 | |
| 		BEGIN
 | |
| 			DROP TABLE #GJSX_List
 | |
| 		END
 | |
| 		DECLARE @Sql NVARCHAR(200)
 | |
| 		select * into  #GJSX_List  from(
 | |
| 					select  
 | |
| 		a.GJSXID   
 | |
| 		,a.detail
 | |
| 		,b.username
 | |
| 		,a.createDate 
 | |
| 		,User_ReceiveID=STUFF(( SELECT ',' + p2.UserName  FROM dbo.Sys_User  as p2  where  PATINDEX('%,' + RTRIM(p2.UserId) + ',%',',' +a.User_ReceiveID  + ',') >0  FOR XML PATH('')), 1, 1,'')   
 | |
| 		, CNProfessionalId=STUFF(( SELECT ',' + Base_CNProfessional.ProfessionalName  FROM dbo.Base_CNProfessional     where  PATINDEX('%,' + RTRIM(Base_CNProfessional.CNProfessionalId) + ',%',',' +a.CNProfessional_ID  + ',') >0  FOR XML PATH('')), 1, 1,'')
 | |
| 		,Base_Project.ProjectName
 | |
| 		,Base_Unit.unitname 
 | |
| 		,a.CloseDate
 | |
| 		,case a.state when  2 then 'ÕýÔÚ½øÐÐ' when 0 then '¹Ø±Õ'  when  1 then '¿ª·Å' end  as state 
 | |
| 		,QuestionTypeName=STUFF(( SELECT ',' + Base_QuestionType.QuestionTypeName  FROM dbo.Base_QuestionType     where  PATINDEX('%,' + RTRIM(Base_QuestionType.QuestionTypeID) + ',%',',' +a.QuestionTypeID  + ',') >0  FOR XML PATH('')), 1, 1,'')
 | |
| 		,a.IsManypeople
 | |
| 		,a.CompleteDate
 | |
| 		,a.AttachUrl 
 | |
| 		,user_Acceptance =STUFF(( SELECT ',' + p2.UserName  FROM dbo.Sys_User  as p2  where  PATINDEX('%,' + RTRIM(p2.UserId) + ',%',',' +a.user_Acceptance  + ',') >0  FOR XML PATH('')), 1, 1,'')    
 | |
| 		from GJSX  as   a  left join   Sys_User  as  b   on   a.UserId=b.UserId
 | |
| 		left join [dbo].[Base_Project]  on a.ProjectId =Base_Project.ProjectId
 | |
| 		left join [dbo].[Base_Unit] on  a.UnitId=Base_Unit.UnitId
 | |
| 		left join [dbo].[Base_QuestionType] on a.QuestionTypeID=Base_QuestionType.QuestionTypeID and a.ProjectId=@ProjectId ) as a
 | |
|                          
 | |
| 		set @Sql ='select * from  #GJSX_List  where  1=1' +@sql_where  
 | |
| 
 | |
| 		exec(@Sql) 
 | |
| 
 | |
| END
 | |
| 
 | |
| GO
 | |
| 
 | |
| create  PROCEDURE [dbo].[Sp_GJSXGetNewCode]
 | |
|  @tableName varchar(50),/*±íÃû*/
 | |
|  @columnName varchar(50),/*ÁÐÃû*/
 | |
|  @prefix varchar(50),/*Á÷Ë®ºÅ±àÂëǰ׺*/
 | |
|  @returnVal nvarchar(50) output
 | |
| AS
 | |
| /*»ñȡһ¸öеÄÁ÷Ë®ºÅ£¨ºóÎåλÉÏÔö¼Ó£©*/
 | |
| declare 
 | |
|         @sql nvarchar(500),
 | |
|         @old nvarchar(50),
 | |
|         @newid varchar(50),
 | |
|         @maxId nvarchar(50)/*ÒÑ·ÖÅäµÄ×î´óÖµ*/
 | |
| select @sql=N'SELECT @maxId=MAX('+@columnName+') from '+@tableName+' where ' + @columnName+' like ' + '''' + @prefix + '%'''
 | |
| EXEC sp_executesql @sql, N'@maxId nvarchar(50) OUTPUT', @maxId OUTPUT 
 | |
| set @old=@maxId
 | |
| 
 | |
| IF(@old is null)
 | |
| BEGIN
 | |
| set @newid=@prefix+'00001'
 | |
| END
 | |
| 
 | |
| ELSE
 | |
| BEGIN
 | |
| set @newid = (select max(right(@old,5)))+1
 | |
| set @newid = @prefix +right('00000'+@newid,5)
 | |
| END
 | |
| 
 | |
| SET @returnVal=@newid
 | |
| 
 | |
| GO
 | |
| 
 | |
| CREATE PROCEDURE [dbo].[Sp_GJSXStatistic]
 | |
| (
 | |
|    @UserID nvarchar(50)=null, --Ìá³öÈË
 | |
|    @unit nvarchar(50)=null, --ÔðÈε¥Î»
 | |
|    @projectId nvarchar(50) =null, --ËùÊôÏîÄ¿
 | |
|    @CNProfessional_ID nvarchar(500) =null, --רҵ
 | |
|    @questionType nvarchar(500)=null, --ÎÊÌâÀà±ð
 | |
|    @processMan nvarchar(50)  =null, --½ÓÊÕÈË
 | |
|    @User_Acceptance nvarchar(50) =null --ÑéÊÕÈË
 | |
| )
 | |
| AS
 | |
| 
 | |
| select 
 | |
| count(*) as allcount,
 | |
| (select count(*) from GJSX as z where z.state='0' and
 | |
|  (z.UserID=@UserID or @UserID is null) and 
 | |
|  (UnitId = @unit or @unit is null) and 
 | |
|  (ProjectId=@projectId or @projectId is null) and 
 | |
|  (CNProfessional_ID like '%' + @CNProfessional_ID + '%' or @CNProfessional_ID is null) and 
 | |
|  (QuestionTypeID like '%' + @questionType + '%' or @questionType is null) and
 | |
|  (z.User_Acceptance like '%' + @User_Acceptance + '%' or @User_Acceptance is null) and
 | |
|  (@processMan is null or (GJSXID in (select distinct GJSXID from GJSX_Process where UserId=@processMan)))) as closecount,
 | |
| (select count(*) from GJSX as z where z.state='1' and 
 | |
| (z.UserID=@UserID or @UserID is null) and 
 | |
| (UnitId = @unit or @unit is null) and 
 | |
| (ProjectId=@projectId or @projectId is null) and 
 | |
| (CNProfessional_ID like '%' + @CNProfessional_ID + '%' or @CNProfessional_ID is null) and 
 | |
| (QuestionTypeID like '%' + @questionType + '%' or @questionType is null) and
 | |
| (z.User_Acceptance like '%' + @User_Acceptance + '%' or @User_Acceptance is null) and 
 | |
| (@processMan is null or (GJSXID in (select distinct GJSXID from GJSX_Process where UserId=@processMan)))) as opencount,
 | |
| (select count(*) from GJSX as z where z.state='2' and 
 | |
| (z.UserID=@UserID or @UserID is null) and 
 | |
| (UnitId = @unit or @unit is null) and 
 | |
| (ProjectId=@projectId or @projectId is null) and 
 | |
| (CNProfessional_ID like '%' + @CNProfessional_ID + '%' or @CNProfessional_ID is null) and 
 | |
| (QuestionTypeID like '%' + @questionType + '%' or @questionType is null) and 
 | |
| (z.User_Acceptance like '%' + @User_Acceptance + '%' or @User_Acceptance is null)and
 | |
| (@processMan is null or (GJSXID in (select distinct GJSXID from GJSX_Process where UserId=@processMan)))) as proceingcount
 | |
| from GJSX
 | |
| where 
 | |
| (UserID=@UserID or @UserID is null) and 
 | |
| (UnitId = @unit or @unit is null) and 
 | |
| (GJSX.ProjectId=@projectId or @projectId is null) and
 | |
| (GJSX.CNProfessional_ID like '%' + @CNProfessional_ID + '%' or @CNProfessional_ID is null) and 
 | |
| (GJSX.QuestionTypeID like '%' + @questionType + '%' or @questionType is null) and
 | |
| (GJSX.User_Acceptance like '%' + @User_Acceptance + '%' or @User_Acceptance is null) and
 | |
| (@processMan is null or (GJSXID in (select distinct GJSXID from GJSX_Process where UserId=@processMan)))
 | |
| 
 | |
| GO
 | |
| 
 | |
| CREATE TABLE [dbo].[Base_QuestionType](
 | |
| 	[QuestionTypeID] [nvarchar](50) NOT NULL,
 | |
| 	[QuestionTypeCode] [nvarchar](50) NOT NULL,
 | |
| 	[QuestionTypeName] [nvarchar](50) NOT NULL,
 | |
| 	[projectId] [nvarchar](50) NULL,
 | |
|  CONSTRAINT [PK_Base_QuestionType] PRIMARY KEY CLUSTERED 
 | |
| (
 | |
| 	[QuestionTypeID] ASC
 | |
| )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
 | |
| ) ON [PRIMARY]
 | |
| 
 | |
| GO
 | |
| CREATE TABLE [dbo].[GJSX](
 | |
| 	[GJSXID] [nvarchar](50) NOT NULL,
 | |
| 	[Detail] [nvarchar](2000) NULL,
 | |
| 	[UserID] [nvarchar](50) NULL,
 | |
| 	[CreateDate] [datetime] NULL,
 | |
| 	[User_ReceiveID] [varchar](8000) NULL,
 | |
| 	[CNProfessional_ID] [varchar](8000) NULL,
 | |
| 	[ProjectId] [nvarchar](50) NULL,
 | |
| 	[UnitId] [nvarchar](50) NULL,
 | |
| 	[CloseDate] [datetime] NULL,
 | |
| 	[state] [char](2) NULL,
 | |
| 	[QuestionTypeID] [varchar](8000) NULL,
 | |
| 	[IsManypeople] [char](1) NULL,
 | |
| 	[CompleteDate] [datetime] NULL,
 | |
| 	[AttachUrl] [nvarchar](1000) NULL,
 | |
| 	[User_Acceptance] [varchar](8000) NULL,
 | |
|  CONSTRAINT [PK_BO_GJSX] PRIMARY KEY CLUSTERED 
 | |
| (
 | |
| 	[GJSXID] ASC
 | |
| )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
 | |
| ) ON [PRIMARY]
 | |
| 
 | |
| GO
 | |
| 
 | |
| CREATE TABLE [dbo].[GJSX_detail](
 | |
| 	[cuid] [nvarchar](50) NOT NULL,
 | |
| 	[GJSXID] [nvarchar](50) NULL,
 | |
| 	[Progress_user] [nvarchar](50) NULL,
 | |
| 	[Progress_detail] [nvarchar](2000) NULL,
 | |
| 	[Date] [datetime] NULL,
 | |
| 	[sort] [int] NULL,
 | |
| 	[FilePath] [nvarchar](500) NULL,
 | |
|  CONSTRAINT [PK_BO_GJSXMX] PRIMARY KEY CLUSTERED 
 | |
| (
 | |
| 	[cuid] ASC
 | |
| )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
 | |
| ) ON [PRIMARY]
 | |
| 
 | |
| GO
 | |
| 
 | |
| CREATE TABLE [dbo].[GJSX_Process](
 | |
| 	[ProcessID] [nvarchar](50) NOT NULL,
 | |
| 	[GJSXID] [nvarchar](50) NULL,
 | |
| 	[UserId] [nvarchar](50) NULL,
 | |
|  CONSTRAINT [PK_GJSXProcess] PRIMARY KEY CLUSTERED 
 | |
| (
 | |
| 	[ProcessID] ASC
 | |
| )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
 | |
| ) ON [PRIMARY]
 | |
| 
 | |
| GO
 | |
| ALTER TABLE [dbo].[Base_QuestionType]  WITH CHECK ADD  CONSTRAINT [FK_Base_QuestionType_l_AffiliationProjects] FOREIGN KEY([projectId])
 | |
| REFERENCES [dbo].[Base_Project] ([ProjectId])
 | |
| GO
 | |
| ALTER TABLE [dbo].[Base_QuestionType] CHECK CONSTRAINT [FK_Base_QuestionType_l_AffiliationProjects]
 | |
| GO
 | |
| insert into Sys_Menu( MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType ,IsOffice,IsEnd,IsUsed )
 | |
| values('3044D68E-5018-4B57-BFC4-FBE4BCCA8B8B','ÎÊÌâÀà±ð¶¨Òå','BaseInfo/QuestionType.aspx',160,'5196A6FD-4BF1-46B3-8D24-9A3CE5BB4760','Menu_SysSet',1,1,1)
 | |
| insert into Sys_Menu( MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType ,IsOffice,IsEnd,IsUsed )
 | |
| values('53F0B89E-A69F-4E7A-BE1C-0ADAC7F504DE','¹Ø¼üÊÂÏî','',110,0,'Menu_PZHGL',0,0,1)
 | |
| 
 | |
| insert into Sys_Menu( MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType ,IsOffice,IsEnd,IsUsed )
 | |
| values('0BEA2126-7A48-40EB-8E21-99148E91A22B','¹Ø¼üÊÂÏî','PZHGL/GJSX/GJSXList.aspx',10,'53F0B89E-A69F-4E7A-BE1C-0ADAC7F504DE','Menu_PZHGL',0,1,1)
 | |
| insert into Sys_Menu( MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType ,IsOffice,IsEnd,IsUsed )
 | |
| values('5F3B18D6-9FBA-4EF5-A7E4-DC9F6A4EA680','¹Ø¼üÊÂÏî²éѯ','PZHGL/GJSX/GJSXFind.aspx',20,'53F0B89E-A69F-4E7A-BE1C-0ADAC7F504DE','Menu_PZHGL',0,1,1)
 | |
| insert into Sys_Menu( MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType ,IsOffice,IsEnd,IsUsed )
 | |
| values('CAA875A7-089B-4B79-87CE-742FDFD9DE43','¹Ø¼üÊÂÏîͳ¼Æ','PZHGL/GJSX/GJSXInfoCount.aspx',30,'53F0B89E-A69F-4E7A-BE1C-0ADAC7F504DE','Menu_PZHGL',0,1,1)
 | |
| 
 | |
| 
 | |
|      |