用友T6-ERP系统技术解析(一)登录界面

用友T6-ERP系统 技术解析(一)登录界面

在登录界面可以在下拉框控件选择操作员的名称,根据操作员的名称输入相对应的密码进行登录,如果输入密码不正确系统将会自动提示你密码输入错误,然后清空密码的文本框,让用户重新输入。界面如图(2.1-1)所示

用友T6-ERP系统技术解析(一)登录界面_第1张图片
2.1-1


从界面上可以看到的控件有

控件名称

  说明

下拉框(comboBox

控件可以在工具箱直接拖动至窗体,拖至窗体后右击属性可以修改控件的样式和各种属性,还可以编辑事件。

文本框(textBox

按钮(button


第一步:登录功能实现

1、表与关系

用友T6-ERP系统技术解析(一)登录界面_第2张图片

                                                                                                        图2.1-2


dbo.TheOperatorTable

Primary Key(s): 操作员表 TheOperatorID

列名

数据类型

主键/外键

说明

TheOperatorID

int - Identity

主键

操作员ID

TheOperatorCode

nchar (20)

外键

操作员编码

TheOperatorTypeID

int

外键

操作类型ID

TheOperatorTypeName

nchar (30)

外键

操作员全名

Call

nchar (10)

外键

称呼

Note

nchar (30)

外键

备注

DepartmentID

int

外键

部门ID

ContactAddress

nchar (20)

外键

联系地址

ContactPhoneNumber

nchar (20)

外键

联系电话

Email

nchar (20)

外键

Email

Password

nchar (10)

外键

密码

Pictures

image

外键

图片

OperationTypeID

int

外键

操作类型ID


2绑定下拉框

第一步:数据库存储过程

if(@Type='frm_Login_BingDingcbo_Operator')--绑定操作员
 begin	SELECT   LTRIM(rtrim(  TheOperatorID)) as TheOperatorID, ltrim(rtrim(TheOperatorTypeName)) as TheOperatorTypeName   
 FROM         TheOperatorTable	
End

第二步:服务端代码

 DALPublic.DALMethod myDALMethod = new DALPublic.DALMethod();
        [OperationContract]
        public DataSet frm_Login_BingDingcbo_Operator()//绑定操作员
        {
            SqlParameter[] SQlCMDpas = {
                                             new SqlParameter("@Type", SqlDbType.Char)
                                              
                                        };
            SQlCMDpas[0].Value = "frm_Login_BingDingcbo_Operator";

            DataTable dt = myDALMethod.QueryDataTable("frm_Login", SQlCMDpas);
            DataSet ds = new DataSet();
            ds.Tables.Add(dt);
            return ds;
        }

第三步:界面层代码

 在登录窗口的Load事件

   private void frm_Login_Load(object sender, EventArgs e)
        {
            this.TopMost = true;     //设置顶级窗体
            cbo_Operator.DataSource=myfrm_LoginClient.frm_Login_BingDingcbo_Operator().Tables[0];//绑定操作员下拉框
            cbo_Operator.DisplayMember = "TheOperatorTypeName";
            cbo_Operator.ValueMember = "TheOperatorID";
        }

3登录功能实现

用友T6-ERP系统技术解析(一)登录界面_第3张图片

                                               图2.1-3

第一步:数据库存储过程

if(@Type='frm_Login_SelectTheOperatorTable')--登录时使用操作员与密码
	begin
	SELECT     TheOperatorID AS 操作员ID, TheOperatorTypeName AS 操作员名称, Password AS 密码
	FROM         TheOperatorTable
	where  (TheOperatorTypeName=@TheOperatorTypeName )and (Password=@Password)
	End

第二步:服务端代码

 [OperationContract]
        public DataSet frm_Login_SelectTheOperatorTable(string TheOperatorTypeName, string Password)//登录时使用操作员与密码
        {
            SqlParameter[] SQlCMDpas = {
                                             new SqlParameter("@Type", SqlDbType.Char),                                               
                                             new SqlParameter("@TheOperatorTypeName",SqlDbType.NChar),                                           
                                             new SqlParameter("@Password",SqlDbType.NChar),                                              
                                        };
            SQlCMDpas[0].Value = "frm_Login_SelectTheOperatorTable";
            SQlCMDpas[1].Value = TheOperatorTypeName;
            SQlCMDpas[2].Value = Password;
            DataTable dt = myDALMethod.QueryDataTable("frm_Login", SQlCMDpas);
            DataSet ds = new DataSet();
            ds.Tables.Add(dt);
            return ds;
        }

第三步:界面层代码

 

登录按钮的单击事件

  private void btn_Login_Click(object sender, EventArgs e)
        {
            PublicStaticFields.intOperatorID = Convert.ToInt32(cbo_Operator.SelectedValue.ToString().Trim());//获取下拉框的值
            PublicStaticFields.strOperatorName = cbo_Operator.Text;//获取操作员名字
            string strPassword = txt_Password.Text;//获取文本框密码

            if (txt_Password.Text == "")//如果密码为空
            {
                MessageBox.Show("请输入密码。");//弹出窗口提示“请输入密码”
                return;//返回
            }
            if (myfrm_LoginClient.frm_Login_SelectTheOperatorTable(PublicStaticFields.strOperatorName, strPassword).Tables[0].Rows.Count == 1)//如果登录人与密码一致
            {
                this.Hide();//隐藏登录窗口
                PublicStaticForm.pubMain = new frm_Main();//实例化窗口
                PublicStaticForm.pubMain.ShowDialog();//显示主界面

            }
            else
            {
                MessageBox.Show("密码错误,请重新输入。");//弹出窗口提示密码错误
                txt_Password.Text = "";//清空密码
                txt_Password.Focus();//设置焦点
            }

        }

4取消按钮功能实现

取消按钮单击事件

  private void btn_Cancel_Click(object sender, EventArgs e)
        {
            DialogResult result = MessageBox.Show("是否退出系统?", "系统提示", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);//弹出提示框
            if (result == DialogResult.Yes)//返回是
            {
                this.Dispose();//释放资源
                this.Close();//关闭窗口
                Application.Exit();//停止程序
            }
        }

仅供学习,禁止用于商业用途,违者后果自负。



你可能感兴趣的:(用友T6-ERP系统技术解析(一)登录界面)