zoukankan      html  css  js  c++  java
  • SyteLine Authorizations

    实施Syteline system, 在authorizations时,经常需要写的几个SQL语句,因此把它写成存储过程,在使用时,执行这些存储过程即可,纯粹是为了方便工作。

    取到所有用户:

    CREATE PROCEDURE [dbo].[usp_SyteLine_GetUserNames]
    AS 
    SELECT [userId],[username],[userDesc] FROM [dbo].[UserNames] ORDER BY [username]

     
    取得用户信息By UserId:

    CREATE PROCEDURE [dbo].[usp_SyteLine_GetUserNamesByUserId]
    (
        
    @UserId DECIMAL(11,0)
    )
    AS 
    SELECT [userId],[username],[userDesc] FROM [dbo].[UserNames] WHERE UserId = @UserId

    GO

      

    取得所有组信息:

    CREATE PROCEDURE [dbo].[usp_SyteLine_GetGroupNames]
    AS 
    SELECT [GroupId],[GroupName],[GroupDesc] FROM [dbo].[GroupNames] ORDER BY [GroupName] ASC

    GO

     
    取得用户信息By GroupId:

    代码
    CREATE PROCEDURE [dbo].[usp_SyteLine_GetUserNamesByGroup]
    (
        
    @GroupId DECIMAL(11,0)
    )
    AS 
    SELECT [userId],[username],[userDesc] FROM [dbo].[UserNames] WHERE UserId IN 
    (
        
    SELECT [UserId] FROM [dbo].[UserGroupMap] WHERE [GroupId] = @GroupId
    )
    GO

      

    取得权限组By UserId:

    代码
    CREATE PROCEDURE [dbo].[usp_SyteLine_GetGroupNamesByUser]
    (
        
    @UserId DECIMAL(11,0)
    )
    AS 
    SELECT [GroupId],[GroupName],[GroupDesc] FROM [dbo].[GroupNames] WHERE [GroupId] IN 
    (
        
    SELECT [GroupId] FROM [dbo].[UserGroupMap] WHERE [UserId] = @UserId
    )

    GO

      

    取得权限组By GroupId:

    代码
    CREATE PROCEDURE [dbo].[usp_SyteLine_GetGroupNamesByGroup]
    (
        
    @GroupId DECIMAL(11,0)
    )
    AS 
    SELECT [GroupId],[GroupName],[GroupDesc] FROM [dbo].[GroupNames] WHERE [GroupId] = @GroupId

    GO


    取得用户息By ObjectName: 

    代码
    CREATE PROCEDURE [dbo].[usp_SyteLine_GetUserNamesByObject]
    (
        
    @ObjectName NVARCHAR(50)
    )
    AS 
    SELECT [userId],[username],[userDesc] FROM [dbo].[UserNames] WHERE UserId IN 
    (
    SELECT [Id] FROM [dbo].[AccountAuthorizations]
    WHERE [UserFlag] = 1 AND [ObjectType] = 0 AND ObjectName1 LIKE '%' +@ObjectName + '%')

       
    取得权限组By ObjectName:

    代码
    CREATE PROCEDURE [dbo].[usp_SyteLine_GetGroupNamesByObject]
    (
        
    @ObjectName NVARCHAR(50)
    )
    AS 
    SELECT GroupId,GroupName,GroupDesc FROM [dbo].[GroupNames] WHERE GroupId IN(
    SELECT [Id] FROM [dbo].[AccountAuthorizations]
    WHERE [UserFlag] = 0 AND [ObjectType] = 0 AND ObjectName1 LIKE '%' +@ObjectName + '%'

      

    取得用户拥有form对象By userId:

    代码
    CREATE PROCEDURE [dbo].[usp_SyteLine_GetAccountAuthorizationsByUser]
    (
        
    @UserId DECIMAL(11,0)
    )
    AS 
    SELECT [ObjectName1],
    CASE WHEN [ReadPrivilege] = 1 THEN 'Granted' WHEN [ReadPrivilege] = 0 THEN 'Revoked' END AS [ReadPrivilege],
    CASE WHEN [UpdatePrivilege] = 1 THEN 'Granted' WHEN [UpdatePrivilege] = 0 THEN 'Revoked' END AS [UpdatePrivilege],
    CASE WHEN [BulkUpdatePrivilege] = 1 THEN 'Granted' WHEN [BulkUpdatePrivilege] = 0 THEN 'Revoked' END AS [BulkUpdatePrivilege],
    CASE WHEN [InsertPrivilege] = 1 THEN 'Granted' WHEN [InsertPrivilege] = 0 THEN 'Revoked' END AS [InsertPrivilege],
    CASE WHEN [DeletePrivilege] = 1 THEN 'Granted' WHEN [DeletePrivilege] = 0 THEN 'Revoked' END AS [DeletePrivilege],
    CASE WHEN [EditPrivilege] = 1 THEN 'Granted' WHEN [EditPrivilege] = 0 THEN 'Revoked' END AS [EditPrivilege],
    CASE WHEN [ExecutePrivilege] = 1 THEN 'Granted' WHEN [ExecutePrivilege] = 0 THEN 'Revoked' END AS [ExecutePrivilege] 
    FROM [dbo].[AccountAuthorizations] 
    WHERE [UserFlag] = 1 AND [Id] = @UserId

    GO

      

    取得组拥有form对象By GroupId:

    代码
    CREATE PROCEDURE [dbo].[usp_SyteLine_GetAccountAuthorizationsByGroup]
    (
        
    @GroupId DECIMAL(11,0)
    )
    AS 
    SELECT [ObjectName1],
    CASE WHEN [ReadPrivilege] = 1 THEN 'Granted' WHEN [ReadPrivilege] = 0 THEN 'Not Granted' END AS [ReadPrivilege],
    CASE WHEN [UpdatePrivilege] = 1 THEN 'Granted' WHEN [UpdatePrivilege] = 0 THEN 'Not Granted' END AS [UpdatePrivilege],
    CASE WHEN [BulkUpdatePrivilege] = 1 THEN 'Granted' WHEN [BulkUpdatePrivilege] = 0 THEN 'Not Granted' END AS [BulkUpdatePrivilege],
    CASE WHEN [InsertPrivilege] = 1 THEN 'Granted' WHEN [InsertPrivilege] = 0 THEN 'Not Granted' END AS [InsertPrivilege],
    CASE WHEN [DeletePrivilege] = 1 THEN 'Granted' WHEN [DeletePrivilege] = 0 THEN 'Not Granted' END AS [DeletePrivilege],
    CASE WHEN [EditPrivilege] = 1 THEN 'Granted' WHEN [EditPrivilege] = 0 THEN 'Not Granted' END AS [EditPrivilege],
    CASE WHEN [ExecutePrivilege] = 1 THEN 'Granted' WHEN [ExecutePrivilege] = 0 THEN 'Not Granted' END AS [ExecutePrivilege]
    FROM [dbo].[AccountAuthorizations] 
    WHERE [UserFlag] = 0 AND [ObjectType] = 0 AND [Id] = @GroupId

    GO
  • 相关阅读:
    菜鸟学自动化测试(三)—-selenium 命令
    菜鸟学自动化测试(二)—-selenium IDE 功能扩展
    用js实现自动打字动画效果
    hihoCoder #1015 : KMP算法
    hihoCoder #1014 : Trie树
    android相对布局中@id和@+id的区别(原理)
    android中动态给EditText获得焦点并弹起软键盘的方法详解
    网页版井字游戏(TicTacToe)人机对战的制作(附思路和源码)
    网页版番茄时钟的制作——Pomodoro Clock
    制作网页版简易计算器(Calculator)
  • 原文地址:https://www.cnblogs.com/insus/p/1899336.html
Copyright © 2011-2022 走看看