//用户登陆
        public bool Login(string name, string psw)
        {
            bool authentication = false;

            OracleConnection conn = new OracleConnection(Properties.Settings.Default.ltznConnectionString);

            conn.Open();
            string        sql = "select count(*) from users where yonghu=:name and mima=:psw";
            OracleCommand cmd = new OracleCommand(sql, conn);

            cmd.Parameters.Add(":name", OracleType.VarChar).Value = name;
            cmd.Parameters.Add(":psw", OracleType.VarChar).Value  = psw;
            OracleDataReader dr = cmd.ExecuteReader();

            while (dr.Read())
            {
                if (dr.GetInt32(0) > 0)
                {
                    authentication = true;
                }
            }
            dr.Close();
            conn.Close();
            if (authentication)
            {
                currentUser = new LtznUser(name);
                if (UserChanged != null)
                {
                    UserChanged(this.currentUser);
                }
            }
            return(authentication);
        }
 //用户注销
 public void Quit()
 {
     currentUser = null;
     if (UserChanged != null)
     {
         UserChanged(this.currentUser);
     }
 }
Beispiel #3
0
        void instance_UserChanged(LtznUser ltznUser)
        {
            IPrincipal p = LtznUserManager.instance.CurrentUser;

            if (p != null)
            {
                this.toolStripStatusLabel1.Text = p.Identity.Name;

                if (p.IsInRole("2#大烧"))
                {
                    生产.Visible = false;
                    报表.Visible = false;
                    数据分析ToolStripMenuItem.Visible = false;
                    高炉燃料比综合分析系统.Visible           = false;
                    查询.Visible = false;
                }
                if (p.IsInRole("1#大烧"))
                {
                    生产.Visible = false;
                    报表.Visible = false;
                    数据分析ToolStripMenuItem.Visible = false;
                    高炉燃料比综合分析系统.Visible           = false;
                    查询.Visible = false;
                }
                if (p.IsInRole("统计"))
                {
                    报表参数ToolStripMenuItem.Enabled = true;
                }
                if (p.IsInRole("管理员"))
                {
                    参数设定ToolStripMenuItem.Enabled = true;
                    用户管理ToolStripMenuItem.Enabled = true;
                    报表参数ToolStripMenuItem.Enabled = true;
                    出铁计划ToolStripMenuItem.Enabled = true;
                    出铁方案ToolStripMenuItem.Enabled = true;
                    铁次管理ToolStripMenuItem.Enabled = true;
                    料线探齿ToolStripMenuItem.Enabled = true;
                }
                if (p.IsInRole("1高炉") || p.IsInRole("3高炉") || p.IsInRole("5高炉") || p.IsInRole("6高炉"))
                {
                    参数设定ToolStripMenuItem.Enabled = true;
                }
                if (p.IsInRole("计算模型"))
                {
                    btnModelManager.Enabled = true;
                }
                else
                {
                    btnModelManager.Enabled = false;
                }

                登陆.Text      = "退出";
                修改密码.Visible = true;
            }
            else
            {
                参数设定ToolStripMenuItem.Enabled   = false;
                用户管理ToolStripMenuItem.Enabled   = false;
                报表参数ToolStripMenuItem.Enabled   = false;
                出铁计划ToolStripMenuItem.Enabled   = false;
                出铁方案ToolStripMenuItem.Enabled   = false;
                铁次管理ToolStripMenuItem.Enabled   = false;
                料线探齿ToolStripMenuItem.Enabled   = false;
                btnModelManager.Enabled         = false;
                this.toolStripStatusLabel1.Text = "";
                登陆.Text      = "登陆";
                修改密码.Visible = false;
            }
            UDPListener.instance.resetUnDealMsg();
        }