USE [lserp_hty] GO /****** Object: StoredProcedure [dbo].[p_getControlLocation_Mobile] Script Date: 01/24/2015 18:54:41 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: -- Create date: -- Description: -- ============================================= ALTER PROCEDURE [dbo].[p_getControlLocation_Mobile] -- Add the parameters for the stored procedure here @formkey varchar(50), --关键字 @modid varchar(20), --模块编码 @operatorname varchar(20) --登录操作员 AS BEGIN --将所有设置显示的列加入临时表 SELECT * ,1 as isedited into #tmp_controllocation FROM [v_systemcontrolLocation_Mobile] a WHERE a.formKey=@formkey and isnull(showmobile1,1)=1 update #tmp_controllocation set visible = 1 update #tmp_controllocation set visible=0 where (ISNULL(#tmp_controllocation.PRIVILEGEVIEW, '') = '' OR EXISTS (SELECT 1 FROM P_SYSTEMPRIVILEGE WHERE MODID = @modid AND CHARINDEX(@operatorname+',', USERLIST + ',') > 0 AND CHARINDEX(rtrim(CAST(PRIVTYPEID AS VARCHAR(10))) + ',', #tmp_controllocation.PRIVILEGEVIEW + ',') > 0)) update #tmp_controllocation set isedited=0 where --ISNULL(edited, 0) = 0 AND (ISNULL(PRIVILEGEOPER, '') = '' OR EXISTS (SELECT 1 FROM P_SYSTEMPRIVILEGE WHERE MODID = @modid AND CHARINDEX(@operatorname+',', USERLIST + ',') > 0 AND CHARINDEX(rtrim(CAST(PRIVTYPEID AS VARCHAR(10))) + ',', #tmp_controllocation.PRIVILEGEOPER + ',') > 0)) update #tmp_controllocation set edited=isedited where isnull(edited,0)=0 update #tmp_controllocation set edited=1 where visible=1 alter table #tmp_controllocation drop column isedited select * from #tmp_controllocation order by orderid -- Insert statements for procedure here --SELECT GETDATE() END