2018-12-04

                             匯報(bào)總結(jié)

小組成員:謝先意

      田俊

      李越男

      龔建云

王超

2.3系統(tǒng)主界面的制作

圖片1.png

新建步驟

1.新建一個(gè)form1 命名為用戶登錄。

2.添加2個(gè)Button控件,用于登錄,退出顯示按鈕! 3.添加3個(gè)Textbox控件,用于用戶輸入登錄名和密碼! 4.添加1個(gè)Linklabel控件,用于超鏈接,顯示忘記密碼! 5.添加3個(gè)Label控件,用于顯示用戶名和密碼! 6.調(diào)整各個(gè)控件的位置大小,并對(duì)其進(jìn)行相關(guān)設(shè)置! 7.設(shè)置用戶名和密碼

主要代碼

private void frm_Login_Load(objectsender, EventArgs e)

    {

        // 設(shè)置收銀員為默認(rèn)登錄類型

        this.cbb_UserType.SelectedIndex = 0;

        // 禁止Tab鍵停留到LinkLabel上

        this.ll_Register.TabStop = false;

        this.ll_Forget.TabStop = false;

    }

    // 點(diǎn)擊“登錄”按鈕則登錄系統(tǒng)

    private void bt_Login_Click(objectsender, EventArgs e)

    {

        // TODO

        StringconnStr = "Data Source=.;Initial Catalog=SuperMarketSales;Integrated Security=True";

       // String connStr = ConfigurationManager.ConnectionStrings["SuperMarketSales"].ConnectionString;

        SqlConnectionsqlConn = new SqlConnection(connStr);

        try

        {

            sqlConn.Open();

            StringsqlStr = "";

            if (this.cbb_UserType.Text == "收銀員")

            {

sqlStr = "select * from USERS where ID=@id and PASSWORD=@pwd";

            }

            else

            {

sqlStr = "select * from ADMIN where ID=@id and PASSWORD=@pwd";

            }

            SqlCommandcmd = new SqlCommand(sqlStr, sqlConn);

            cmd.Parameters.Add(new SqlParameter("@id", this.tb_User.Text.Trim()));

            cmd.Parameters.Add(new SqlParameter("@pwd", this.tb_Password.Text.Trim()));

            SqlDataReader dr = cmd.ExecuteReader();

            if (dr.HasRows)

            {

                dr.Read();

                UserInfo.userId = dr["ID"].ToString();

                UserInfo.userName = dr["NAME"].ToString();

                UserInfo.userPwd = dr["PASSWORD"].ToString();

                UserInfo.userPhone = dr["PHONE"].ToString();

                UserInfo.userType = this.cbb_UserType.Text;

                MessageBox.Show(UserInfo.userType + "登陸成功");

                if (UserInfo.userType == "收銀員")

                {

                    //MessageBox.Show(UserInfo.userType + "登陸成功");

                    MainFormUserformUser = new MainFormUser();

                    formUser.Show();

                    this.Hide();

                }

                else if (UserInfo.userType == "庫管員")

                {

                    MainFormAdminformAdmin = new MainFormAdmin();

                    formAdmin.Show();

                    this.Hide();

                }

2.4系統(tǒng)數(shù)據(jù)庫設(shè)計(jì)

E-R圖

圖片2.png

所有的表的字段

收銀員表 工號(hào) Int 否 主鍵 姓名 Varchar(50) 是 密碼 Varchar(50) 是 電話 Varchar(15) 是 庫管員表 列名 數(shù)據(jù)類型 允許為空 備注 工號(hào) Int 否 主鍵 姓名 Varchar(50) 是 密碼 Varchar(50) 是 電話 Varchar(15) 是 商品表 列名 數(shù)據(jù)類型 允許為空 備注 商品號(hào) Int 否 主鍵 價(jià)格 Varchar(50) 是 名稱 Varchar(50) 是

供應(yīng)商表 列名 數(shù)據(jù)類型 允許為空 備注 代碼 Int 否 主鍵 名稱 Varchar(50) 是 地點(diǎn) Varchar(50) 是 聯(lián)系人 Varchar(50) 是 電話 Varchar(15) 是

圖片3.png

2.5登錄用戶驗(yàn)證功能設(shè)計(jì)

效果圖
![

圖片5.png

](https://upload-
描述畫面主要功能,列出支持這些功能的后臺(tái)數(shù)據(jù)庫表結(jié)構(gòu)

image.png

收銀員、庫管員登陸成功的顯示狀態(tài),實(shí)現(xiàn)登錄信息到數(shù)據(jù)庫服務(wù)器上驗(yàn)證,顯示數(shù)據(jù)庫 SuperMarketSales中的收銀員用戶表和庫管員用戶表

ADO.NET查詢數(shù)據(jù)庫的流程

image.png

image.png

貼入重要代碼片段,并進(jìn)行詳細(xì)描述

image.png

image.png

2.6密碼修改界面功能設(shè)計(jì)

效果圖


image.png

image.png
image.png

描述畫面主要功能,并列出支持這些功能的后臺(tái)數(shù)據(jù)庫表結(jié)構(gòu)

image.png

ADO.NET更新數(shù)據(jù)庫的流程

image.png

image.png

image.png

1.連接數(shù)據(jù)庫 String connStr = "Data Source=.;Initial Catalog=SuperMarketSales;Integrated Security=True"; SqlConnection sqlConn = new SqlConnection(connStr);

try

        {

            // 連接數(shù)據(jù)庫

            sqlConn.Open();

2.構(gòu)造數(shù)據(jù)庫并查詢 String sqlStr = "update EMPLOYEE set PASSWORD=@pwd where ID=@id"; SqlCommand cmd = new SqlCommand(sqlStr, sqlConn);

        // SQL字符串參數(shù)賦值

        cmd.Parameters.Add(new SqlParameter("@pwd", newPwd));

        cmd.Parameters.Add(new SqlParameter("@id", UserInfo.userId));

        // 將命令發(fā)送給數(shù)據(jù)庫

        int res = cmd.ExecuteNonQuery();

3.根據(jù)返回值判斷是否修改成功

if (res != 0)

        {

            MessageBox.Show("密碼修改成功");

            this.Close();

        }

        else

        {

            MessageBox.Show("密碼修改錯(cuò)誤");

        }

    }

    catch (Exception exp)

    {

        MessageBox.Show("訪問數(shù)據(jù)庫錯(cuò)誤:" + exp.ToString());

    }

    finally

    {

        sqlConn.Close();

    }

}

2.7商品信息錄入界面的功能設(shè)計(jì)

效果圖

image.png

描述畫面主要功能,并列出支持這些功能的后臺(tái)數(shù)據(jù)庫表結(jié)構(gòu)

1.導(dǎo)入命名空間;

2.定義數(shù)據(jù)庫連接字符串,創(chuàng)建Connection對(duì)象;

3.打開連接;

4.利用Command對(duì)象的ExecuteNonQuery()方法執(zhí)行Insert語句;

5.通過ExecuteNonQuery()方法返回值判斷是否修改成功,并在界面上提示;

6.關(guān)閉連接。

畫面功能是如何迭代的,描述迭代過程(無外鍵****→****有外鍵)

![
ComboBox數(shù)據(jù)綁定流程

2.8商品信息查詢界面的功能設(shè)計(jì)

效果圖

image.png

描述畫面主要功能,并列出支持這些功能的后臺(tái)數(shù)據(jù)庫表結(jié)構(gòu)

1.導(dǎo)入命名空間;

2.定義數(shù)據(jù)庫連接字符串,創(chuàng)建Connection對(duì)象;

3.打開連接;

4.利用Command對(duì)象的ExecuteNonQuery()方法執(zhí)行Insert語句;

5.通過ExecuteNonQuery()方法返回值判斷是否修改成功,并在界面上提示;

6.關(guān)閉連接。

ADO.NET插入數(shù)據(jù)庫的流程

[圖片上傳失敗...(image-9a98f2-1543932860071)]

畫面功能是如何迭代的,描述迭代過程(無外鍵****→****有外鍵)

[圖片上傳失敗...(image-4d1269-1543932860071)]

DataGridView數(shù)據(jù)綁定流程。

給DataGridView控件取個(gè)Name名稱

將要綁定的數(shù)據(jù)列表賦值給DataGridView的DataSource屬性

貼入重要代碼片段,并進(jìn)行詳細(xì)描述

[圖片上傳失敗...(image-e7b78c-1543932860071)]

2.9系統(tǒng)程序的部署

效果圖


image.png
image.png

打包流程

1.項(xiàng)目右鍵單擊選擇屬性

image.png

2.在應(yīng)用程序里面選擇.ico的圖標(biāo),單擊程序集信息設(shè)置關(guān)于信息

image.png

3.單擊發(fā)布,選擇合適的磁盤發(fā)布項(xiàng)目

image.png

4.電極setup安裝軟件,點(diǎn)擊“智慧商超管理系統(tǒng)”打開軟件

image.png

? `???-?v?

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容