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)
|
|
|
|
|
|
|