IF EXISTS (SELECT 1 FROM sys.objects WHERE object_id = OBJECT_ID('[dbo].[mps_g_1branch_depart_sql]') AND type = 'P')
DROP PROCEDURE [dbo].[mps_g_1branch_depart_sql]
GO
CREATE procedure [dbo].[mps_g_1branch_depart_sql](
@cmpid int,
@mybcid int ,
@bizsid int,
@extparam1 nvarchar(50),
@extparam2 nvarchar(50),
@extparam3 nvarchar(50),
@extparam4 nvarchar(50),
@extparam5 nvarchar(50),
@extparam6 nvarchar(50),
@extparam7 nvarchar(50),
@extparam8 nvarchar(50),
@extparam9 nvarchar(50) 
)
as 
begin
-- 返回部门名称
set nocount on
SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED
declare @sql1 nvarchar(4000) 
declare @sql nvarchar(max) 
select @sql1=bizs_condition from  mps_biztype_source  with(nolock) where bizs_id=@bizsid 
set @sql1 = ISNULL(@sql1,'') 
if (@sql1>'') set @sql1 = ' and ('+@sql1+') '
set @sql = '
select dp_level,dp_id,dp_fdpid ,dp_dpstdid, dp_depart,dp_fullname ,dp_code ,dp_display,(select count(*) from mps_depart b where b.dp_fdpid = a.dp_id and b.dp_isdepart = 0) as dp_father
from mps_depart a with(nolock) 
where dp_cmpid=@cmpid and dp_bcid=@mybcid and dp_fullname>'''' and dp_depart>''''  and dp_isdepart=0 '+@sql1+'
order by    dp_order , dp_level '

exec sp_executesql @sql,
N'@cmpid int,@mybcid int,
@extparam1 nvarchar(50),
@extparam2 nvarchar(50),
@extparam3 nvarchar(50),
@extparam4 nvarchar(50),
@extparam5 nvarchar(50),
@extparam6 nvarchar(50),
@extparam7 nvarchar(50),
@extparam8 nvarchar(50),
@extparam9 nvarchar(50)',
@cmpid,@mybcid,
@extparam1 ,
@extparam2 ,
@extparam3 ,
@extparam4 ,
@extparam5 ,
@extparam6 ,
@extparam7 ,
@extparam8 ,
@extparam9

set nocount off
end