C#--WINDOWS图形界面化 第一弹

简单介绍:此项目为C#的windows图形界面化的银行保险系统。
在项目中载入数据库,然后实例化数据库,用对象来获取数据库中表的内容,然后载入相应的标签中。
关于数据的载入后续会再出一篇文章提到。

使用者是保险公司的操作人员,分为以下4种角色,包括:承保保单录入人员、理赔案件复核人员、数据查询统计人员以及超级管理员,不同角色的人看到不同的操作页面

一 、登录界面

在这里插入图片描述

1.取消 实现将输入框的内容清空
注意:所有的方法在双击后都会自动生成。t_user等为标签的name值,有需求的标签最好在添加时便修改其name值,这样可以方便后续的功能实现。

  private void button2_Click(object sender, EventArgs e)
        {
            t_user.Text = "";
            t_password.Text = "";
        }

2.登录 实现账号和密码不能为空的验证,密码的加密

 private void button1_Click(object sender, EventArgs e)
        {
        //获取用户的输入值
            name = t_user.Text.ToString();
            String pwd = t_password.Text.ToString();
            if (String.IsNullOrEmpty(name) || String.IsNullOrEmpty(pwd))
            {
                MessageBox.Show("用户名或密码为空!!");
                return;
            }
            //对密码进行加密
            pwd = getHash(pwd);
            //从用户表 t_oper 拿到对应的用户数据放入List集合中
            List<t_oper> to = ae.t_oper.Where(t=>t.oper_no == name && t.password == pwd).ToList();
            //判断是否存在输入的用户
            if (to.Count > 0)
            {
            //用户存在 拿到对应用户名的数据集合 
                t_role_oper tro = ae.t_role_oper.Where(t => t.oper_no == name).First();
                //将用户名 和 对应的用户权限传递给下一个窗体
                Form1 f = new Form1(name,tro.role_no);
                //当前窗体进行隐藏
                this.Hide();
                //展示新窗体
                f.Show();

            }
            else
            {
                MessageBox.Show("用户名或密码错误!");
            }
        }

2.1 密码加密方法

private String getHash(String text)
        {
            byte[] b = System.Text.Encoding.UTF8.GetBytes(text);
           SHA256 sha256 = new SHA256CryptoServiceProvider();
            b = sha256.ComputeHash(b);
            StringBuilder sb = new StringBuilder();
            foreach (byte i in b)
            {
                sb.Append(i.ToString("x2"));
            }

            return sb.ToString();
        }

附部分数据表截图:
1.t_oper
在这里插入图片描述

2.t_role_oper
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值