⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 basepage.cs

📁 简单的cI真的是很简单 你想要就下载吧
💻 CS
字号:
using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Text;

//Minter
public class UserType
{
    public static int CanCreateOrder = 0;
    public static int CanConfirmReceive = 1;
    public static int CanInputTransportInfo = 2;
    public static int CanReplayRequire = 3;
    public static int CanCloseOrder = 4;
    public static int Admin = 5;//要求管理员权限

    public static int UserKindNuber = 6;//用户类型数量
}

public class BasePage : System.Web.UI.Page
{

    int employessID;
    string ticket = string.Empty;
    public string error_Message = string.Empty;
    Encoder encoder;
    User userData = new User();                                      //存储用户信息
    PageDesc pageInfo;                                  //储存当前页面信息
    bool[] currentUserRoles = new bool[UserType.UserKindNuber];//User拥有的权限

    bool[] currentPageRoles;                            //哪些用户权限能够访问当前页面

    public int EmployessID
    {
        get { return employessID; }
        //set { employessID = value; }
    }
    public string Ticket
    {
        get
        {
            return ticket;
        }
        //set { ticket = value; }
    }
    public string Error_Message
    {
        get { return error_Message; }
        set { error_Message = value; }
    }

    public User UserData
    {
        get { return userData; }
        //set { userData = value; }
    }
    public PageDesc PageInfo
    {
        get { return pageInfo; }
        //set { pageInfo = value; }
    }

    protected override void OnInit(EventArgs e)
    {
        this.Role();
        base.OnInit(e);
    }

    protected void Role()
    {
        bool IsOwnerRole = false;          //用户是否拥有访问该页面权限

        string temp = SessionManager.GetSessionString("EmployessID").Trim();
        if (temp == string.Empty || temp.Length < 1 || temp == "")
        {                                  //如果用户没有登录或过期

            Response.Redirect("~" + PageNames.m_strPB01);//返回登录页面
        }
        else
        {
            ticket = SessionManager.GetSessionString("Ticket");
            SessionManager.SetSessionString("Ticket", ticket);
            SessionManager.SetSessionString("EmployessID", temp);
            employessID = Convert.ToInt32(temp);
            GetUserData();//获取用户数据     
            currentPageRoles = GetCurrentPageRoles();   //获取当前页面权限
            for (int count = 0; count < currentUserRoles.Length; count++)
            {
                if (currentUserRoles[count] && currentPageRoles[count])
                {
                    IsOwnerRole = true;
                    break;
                }
            }
            if (!IsOwnerRole)
            {
                Response.Redirect("~" + PageNames.m_strPB06);//Error.aspx根据Message值显示错误信息

            }
        }
    }

    public void GetUserData()
    {
        try
        {
            //访问Websevrice获取用户数据

            WebService.VinciService vinciService = new WebService.VinciService();
            WebService.EmployeesEntity employeeData = vinciService.GetEmployeesEntity(employessID, employessID, ticket, out error_Message);
            WebService.OrganizationsEntity organizationData = vinciService.GetOrganizationInfo(employeeData.OrgID, employessID, ticket, out error_Message);
            //将用户数据存入userData
            userData.EmployeeID = employeeData.EmployeeID;
            userData.OrgID = employeeData.OrgID;
            userData.LoginName = employeeData.LoginName;
            userData.FirstName = employeeData.FirstName;
            userData.LastName = employeeData.LastName;
            //CanCreateOrder
            if (organizationData.CanCreateOrder == 1)
                userData.CanCreateOrder = true;
            else
                userData.CanCreateOrder = false;
            //CanRelayRequire
            if (organizationData.CanRelayRequire == 1)
                userData.CanReplayRequire = true;
            else
                userData.CanReplayRequire = false;
            //CanInputTransportInfo
            if (organizationData.CanInputTransportInfo == 1)
                userData.CanInputTransportInfo = true;
            else
                userData.CanInputTransportInfo = false;
            //CanConfirmReceive
            if (organizationData.CanConfirmReceive == 1)
                userData.CanConfirmReceive = true;
            else
                userData.CanConfirmReceive = false;
            //CanCloseOrder
            if (organizationData.CanCloseOrder == 1)
                userData.CanCloseOrder = true;
            else
                userData.CanCloseOrder = false;
            //IsAdmin
            if (organizationData.OrgID == 0)
                userData.IsAdmin = true;
            else
                userData.IsAdmin = false;

            MakecurrentUserRoles(userData); //获取用户权限
        }
        catch (Exception ex)
        {
            Response.Redirect("~" + PageNames.m_strPB06 + "?ErrorNumber=10");//返回错误页面
        }
    }
    /// <summary>
    /// 获取用户权限数组

    /// </summary>
    /// <param name="userData"></param>
    protected void MakecurrentUserRoles(User userData)
    {
        currentUserRoles[UserType.CanCreateOrder] = userData.CanCreateOrder;

        currentUserRoles[UserType.CanConfirmReceive] = userData.CanConfirmReceive;

        currentUserRoles[UserType.CanInputTransportInfo] = userData.CanInputTransportInfo; ;//拥有访问CanInputTransportInfo页面权限

        currentUserRoles[UserType.CanReplayRequire] = userData.CanReplayRequire; ;//拥有访问CanReplayRequire页面权限

        currentUserRoles[UserType.CanCloseOrder] = userData.CanCloseOrder;//拥有访问CanCloseOrder页面权限

        currentUserRoles[UserType.Admin] = userData.IsAdmin;////拥有访问管理员页面权限


    }

    /// <summary>
    /// 获取有哪些用户权限能够访问当前页
    /// </summary>
    /// <returns></returns>  
    public bool[] GetCurrentPageRoles()
    {
        try
        {
            string CurrentPageName = Request.Url.LocalPath.ToString().Trim();
            foreach (PageDesc p in PagesRoles.pageRoles)
            {
                if ((Request.ApplicationPath + p.PageName) == CurrentPageName)
                {
                    pageInfo = p;
                    return p.PageRules;
                }
            }
        }
        catch (Exception ex)
        {
            //SessionManager.SetSessionString("ErrorMessage", ex.Message);
        }

        bool[] none = { false, false, false, false, false, true };
        return none;
    }

    protected void GetTichet()
    {
        //ticket = string.Empty;
        //Service1 s1 = new Service1();
        //s1.CheckLogon(userData.LoginName, userData.Password, out ticket);
        //SessionManager.SetSessionString("Ticket", ticket);
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -