ALTER proc [dbo].[usp_cfg_GetProjectInfoByProjectMaster] @ProjectMaster varchar(100) = 'FF561FBB-9A7E-4822-942F-E22439BAF235' as begin declare @FuncID uniqueidentifier; --"查看所有项目"的功能ID set @FuncID = '6B76832A-1A65-41DA-8DBA-3076441035DE' if exists(select 1 from tbl_Base_UserRole a join tbl_base_Role b on a.RoleID=b.RoleID join tbl_Base_RoleFunc c on b.RoleID = c.RoleID where c.FuncID = @FuncID AND a.UserID = @ProjectMaster ) begin select (a.code+a.name) ProjectName, * from ( SELECT * FROM tbl_cfg_ProjectPackageHistory where RollMapID = (SELECT top 1 RollMapID FROM tbl_plan_RollMap order by StartDate desc , Code desc) ) as b , tbl_cfg_Project a, tbl_cfg_PackageHistoryProjectMapping c where b.PackageHistoryID = c.PackageHistoryID and c.ProjectID = a.ProjectID order by a.code,a.name end else begin select (a.code+a.name) ProjectName, * from ( SELECT * FROM tbl_cfg_ProjectPackageHistory where RollMapID = (SELECT top 1 RollMapID FROM tbl_plan_RollMap order by StartDate desc , Code desc) ) as b , tbl_cfg_Project a, tbl_cfg_PackageHistoryProjectMapping c where b.PackageHistoryID = c.PackageHistoryID and c.ProjectID = a.ProjectID and (a.ProjectMaster = @ProjectMaster or a.ProjectManager = @ProjectMaster ) order by a.code,a.name end end