超市會(huì)員管理系統(tǒng)課程設(shè)計(jì)報(bào)告_第1頁(yè)
超市會(huì)員管理系統(tǒng)課程設(shè)計(jì)報(bào)告_第2頁(yè)
超市會(huì)員管理系統(tǒng)課程設(shè)計(jì)報(bào)告_第3頁(yè)
超市會(huì)員管理系統(tǒng)課程設(shè)計(jì)報(bào)告_第4頁(yè)
超市會(huì)員管理系統(tǒng)課程設(shè)計(jì)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩46頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 蘭州商學(xué)院隴橋?qū)W院 信息工程系課程設(shè)計(jì)報(bào)告課 程 名 稱(chēng): C#課程設(shè)計(jì) 設(shè) 計(jì) 題 目:超市會(huì)員管理系統(tǒng) 系 別:信息工程系 專(zhuān) 業(yè) (方 向):計(jì)算機(jī)科學(xué)與技術(shù)(網(wǎng)絡(luò)工程方向) 年 級(jí)、 班:2012級(jí)本科班 學(xué) 生 姓 名:XXX 學(xué) 生 學(xué) 號(hào):XXXXXXXX 本 組 組 員:XXXXXXXXXXXXXXXX 指 導(dǎo) 教 師:楊 光 2014 年 12 月 26日目錄一、系統(tǒng)開(kāi)發(fā)的背景1二、系統(tǒng)分析與設(shè)計(jì)1(一)系統(tǒng)功能要求1(二)系統(tǒng)模塊結(jié)構(gòu)設(shè)計(jì)1三、系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)2(一)登陸2(二)會(huì)員信息5(三)會(huì)員管理8(1) 會(huì)員管理9(2)購(gòu)物信息管理17(四)信息統(tǒng)計(jì)18(五)系統(tǒng)

2、管理21四、系統(tǒng)測(cè)試23(一)測(cè)試登陸模塊23(二)會(huì)員信息模塊23(三)會(huì)員管理模塊24(四)信息統(tǒng)計(jì)模塊25(五)系統(tǒng)管理模塊27五、總結(jié)27六、附件(代碼、部分圖表)281、源代碼282、圖表47超市會(huì)員管理系統(tǒng)一、系統(tǒng)開(kāi)發(fā)的背景社會(huì)生活的現(xiàn)代化,使得市場(chǎng)的走向發(fā)生巨大變化,由于經(jīng)濟(jì)的發(fā)展,許多大型的現(xiàn)代化超市應(yīng)運(yùn)而生?,F(xiàn)在超市吸引顧客最普遍的做法就是實(shí)行會(huì)員制,超市的會(huì)員可以享受不同程度的優(yōu)惠,從而達(dá)到吸引顧客,刺激消費(fèi)的目的。建立實(shí)用的超市會(huì)員管理系統(tǒng)對(duì)超市的會(huì)員管理有很大的幫助,可以協(xié)助工作人員進(jìn)行會(huì)員的信息登記、更新。因此,為了優(yōu)化超市會(huì)員制度的計(jì)算機(jī)管理,編寫(xiě)了此系統(tǒng)。二、系統(tǒng)

3、分析與設(shè)計(jì)(一) 系統(tǒng)功能要求超市會(huì)員管理系統(tǒng)應(yīng)具備以下功能:1、加入會(huì)員的基本信息,包括:成為會(huì)員的基本條件、優(yōu)惠政策、優(yōu)惠時(shí)間等。2、會(huì)員的基本信息,包括姓名、性別、年齡、工作單位、聯(lián)系方式等。3、會(huì)員購(gòu)物信息:購(gòu)買(mǎi)物品編號(hào)、物品名稱(chēng)、所屬種類(lèi),數(shù)量,價(jià)格等。4、會(huì)員返利信息,包括會(huì)員積分的情況,享受優(yōu)惠的等級(jí)等。5、對(duì)貨物流量及消費(fèi)人群進(jìn)行統(tǒng)計(jì)輸出。(二) 系統(tǒng)模塊結(jié)構(gòu)設(shè)計(jì)通過(guò)對(duì)系統(tǒng)功能的分析,學(xué)生綜合測(cè)評(píng)系統(tǒng)功能如圖1所示。圖1 超市會(huì)員管理系統(tǒng)功能圖通過(guò)上圖的功能分析,把整個(gè)系統(tǒng)劃分為4個(gè)模塊:1、會(huì)員信息,該模塊主要實(shí)現(xiàn):會(huì)員基本信息(會(huì)員編號(hào)、會(huì)員卡號(hào)、姓名、性別、年齡、會(huì)員等級(jí)

4、、當(dāng)前積分、聯(lián)系方式)的輸出;2、會(huì)員管理,該模塊主要實(shí)現(xiàn):會(huì)員管理(會(huì)員的查詢(xún)、刪除、修改和添加)信息,購(gòu)物信息管理(通過(guò)輸入會(huì)員編號(hào)來(lái)查詢(xún)會(huì)員的購(gòu)物信息);3、信息統(tǒng)計(jì),該模塊主要實(shí)現(xiàn):物品流量統(tǒng)計(jì)(通過(guò)柱狀圖來(lái)顯示物品的消費(fèi)情況),消費(fèi)人群統(tǒng)計(jì)(通過(guò)柱狀圖來(lái)統(tǒng)計(jì)人群的消費(fèi)情況);4、系統(tǒng)管理,該模塊主要實(shí)現(xiàn):對(duì)用戶(hù)名和密碼的修改,能夠更好的管理超市會(huì)員管理系統(tǒng)。三、系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)(一) 登陸流程圖如下圖所示:圖2登陸界面流程圖該模塊的具體代碼如下所示。using System;using System.Collections.Generic;using System.Component

5、Model;using System.Data;using System.Drawing;using System.Text;using System.Linq;using System.Windows.Forms;using DevExpress.XtraEditors;namespace 超市會(huì)員管理系統(tǒng) public partial class LoginForm : DevExpress.XtraEditors.XtraForm public LoginForm() InitializeComponent(); bool formMove = false; Point formPoin

6、t; #region 登陸按鈕實(shí)現(xiàn)用戶(hù)名、密碼的驗(yàn)證 private void btnOK_Click(object sender, EventArgs e) if (Login.Login.isEnable(txtUserName.Text.Trim(), txtPassword.Text.Trim() MainForm form = new MainForm(); form.Visible = true; this.Visible = false; else lblShow.Text = 輸入有誤請(qǐng)重新輸入! txtUserName.Clear(); txtPassword.Clear()

7、; txtUserName.Focus(); #endregion #region 退出程序 private void pictureBox2_Click(object sender, EventArgs e) Application.Exit(); #endregion #region 登錄界面的移動(dòng) private void pictureBox1_MouseMove(object sender, MouseEventArgs e) if (formMove = true) Point mousePos = Control.MousePosition; mousePos.Offset(fo

8、rmPoint.X, formPoint.Y); Location = mousePos; private void pictureBox1_MouseDown(object sender, MouseEventArgs e) formPoint = new Point(); int xOffset; int yOffset; if (e.Button = MouseButtons.Left) xOffset = -e.X - SystemInformation.FrameBorderSize.Width; yOffset = -e.Y - SystemInformation.CaptionH

9、eight - SystemInformation.FrameBorderSize.Height; formPoint = new Point(xOffset, yOffset); formMove = true; private void pictureBox1_MouseUp(object sender, MouseEventArgs e) if (e.Button = MouseButtons.Left) formMove = false; #endregion #region登陸界面加載,連接數(shù)據(jù)庫(kù) private void LoginForm_Load(object sender,

10、EventArgs e) Login.Login.linkDataBase(); #endregion (二) 會(huì)員信息該模塊的流程圖如下圖所示:圖3會(huì)員信息流程圖該模塊的具體代碼如下所示。using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Linq;using System.Windows.Forms;using DevExpress.XtraEditors;

11、using DBHelper;using System.Data.SqlClient;namespace 超市會(huì)員管理系統(tǒng) public partial class MemberMessageForm : DevExpress.XtraEditors.XtraForm public MemberMessageForm() InitializeComponent(); #region 全局變量 DataSet dataSet = MainForm.dataSet; DBhelper dbHelper = MainForm.dbhelper; String dataDir; String strM

12、emberCardNo; #endregion #region 按會(huì)員卡卡號(hào)查詢(xún)信息 private void simpleButton1_Click(object sender, EventArgs e) #region 獲取當(dāng)前項(xiàng)的根目錄路徑 dataDir = dbHelper.getCurrentDataPath(); #endregion strMemberCardNo = txtMessg.Text.Trim(); if (string.IsNullOrEmpty(strMemberCardNo) MessageBox.Show(請(qǐng)輸入會(huì)員卡號(hào), , MessageBoxButto

13、ns.OK, MessageBoxIcon.Warning); return; try #region 定向臨時(shí)數(shù)據(jù)庫(kù)中的表主鍵 DataTable dt = dbHelper.getDataTable(MemberMssg, 會(huì)員卡編號(hào)); #endregion #region指向臨時(shí)數(shù)據(jù)庫(kù)中的指定的值得行 DataRow dr = dbHelper.getDataRow(dt, strMemberCardNo); #endregion #region 將臨時(shí)數(shù)據(jù)庫(kù)中的表的值返回到界面中 updataForm(dr); #endregion catch (Exception ex) Mess

14、ageBox.Show(ex.StackTrace); #endregion #region更新界面面板信息 private void updataForm(DataRow dr) #region 更新基本信息界面 if (dr = null) MessageBox.Show(無(wú)該項(xiàng)數(shù)據(jù)記錄, , MessageBoxButtons.OK, MessageBoxIcon.Warning); return; txtMemberAge.Text = dr年齡.ToString(); txtMemberCard.Text = dr會(huì)員卡編號(hào).ToString(); txtMemberGrade.Te

15、xt = dr會(huì)員等級(jí).ToString(); txtMemberName.Text = dr姓名.ToString(); txtMemberNo.Text = dr會(huì)員編號(hào).ToString(); txtMemberSex.Text = dr性別.ToString(); txtMemberPhone.Text = dr聯(lián)系方式.ToString(); txtUnit.Text = dr工作單位.ToString(); txtCurrentIntegral.Text = dr現(xiàn)有積分.ToString(); txtEndDate.Text = dr終止日期.ToString(); try me

16、mberPirecture.Image = Image.FromFile(dataDir+string.Format(picture0.jpg, dr頭像.ToString(); catch (Exception ex) memberPirecture.Image = Image.FromFile(dataDir+string.Format(picturedefault.png); #endregion #region 更新消費(fèi)界面板 dataSet.TablesGoodsMssg.DefaultView.RowFilter = String.Format(會(huì)員卡編號(hào)=0, strMember

17、CardNo); dataGridView1.DataSource = dataSet.TablesGoodsMssg.DefaultView; dataGridView1.AutoSize = true; dataGridView1.Visible = true; #endregion #endregion (三) 會(huì)員管理該模塊的流程圖如下圖所示:圖4會(huì)員管理流程圖(1) 會(huì)員管理該模塊的具體代碼如下所示。namespace 超市會(huì)員管理系統(tǒng) public partial class MemberManageForm : DevExpress.XtraEditors.XtraForm pu

18、blic MemberManageForm() InitializeComponent(); #region全局變量 DataSet dataSet = MainForm.dataSet; DBhelper dbHelper = MainForm.dbhelper; SqlDataAdapter sda = null; DataRow dr; DataRow drs; String dataDir; Boolean isDataBindings = false; Boolean changeState = false; Boolean deleteState = false; Boolean

19、addState = false; #endregion #region 顯示指定信息到預(yù)覽界面 private void btnOK_Click(object sender, EventArgs e) sda = dbHelper.getDataAdapter(); String txtMessg = null; String condition = null; #region 獲取搜索條件值 try txtMessg = txtMssg.Text.Trim(); condition = comboBox1.SelectedItem.ToString().Trim(); if (string

20、.IsNullOrEmpty(txtMessg) & string.IsNullOrEmpty(condition) throw new Exception(); catch (Exception ex) MessageBox.Show(請(qǐng)輸入信息, , MessageBoxButtons.OK, MessageBoxIcon.Warning); return; dataDir = dbHelper.getCurrentDataPath(); #endregion #region 條件查詢(xún) Boolean flag = getDataRow(condition, txtMessg); #end

21、region #region 界面信息更新 if (flag = true) updataForm(); #endregion #endregion #region 按鈕單擊操作 private void comboBox1_SelectedValueChanged(object sender, EventArgs e) txtMssg.EditValue = ; private void btnAdd_Click(object sender, EventArgs e) if (btnAdd.Text = 確定) btnChange(); if (addState = true) #regio

22、n 向DataSet中D的?DataTable追加一行記錄 DataRow newDataRow = dataSet.TablesMemberMssg.NewRow(); try newDataRow會(huì)員編號(hào) = txtMemberNo.Text.ToString(); newDataRow姓名 = txtMemberName.Text.ToString(); newDataRow年齡 = Convert.ToInt32(txtMemberAge.Text); newDataRow性別 = txtMemberSex.Text.ToString(); newDataRow聯(lián)系方式 = txtMe

23、mberPhone.Text.ToString(); newDataRow工作單位 = txtUnit.Text.ToString(); newDataRow起始日期 = DateTime.Now; newDataRow終止日期 = dateTimePicker1.Text; newDataRow積分類(lèi)型 = ; newDataRow現(xiàn)有積分 = Convert.ToInt32(txtCurrentIntegral.Text); newDataRow會(huì)員卡編號(hào) = txtMemberCard.Text.ToString(); newDataRow會(huì)員等級(jí) = txtMemberGrade.Te

24、xt.ToString(); dataSet.TablesMemberMssg.Rows.Add(newDataRow); catch (Exception ex) MessageBox.Show(添加記錄失敗!n); return; dataSet.AcceptChanges(); dbHelper.addDataBase(newDataRow); MessageBox.Show(添加紀(jì)錄成功!); #endregion else if (changeState = true) #region 對(duì)dataset中的表進(jìn)行修改 dataSet.AcceptChanges(); MessageB

25、ox.Show( 修改記錄成功!); #endregion else if (deleteState = true) #region 刪除ydataset中的表的指定記錄 String deleteMemNo = txtMemberCard.Text.Trim(); try DataColumn primaryKey = new DataColumn dataSet.TablesMemberMssg.Columns會(huì)員卡編號(hào) ; dataSet.TablesMemberMssg.PrimaryKey = primaryKey dataSet.TablesMemberMssg.Rows.Remove(dataSet.TablesMemberMssg.Rows.Find(deleteMemNo); catch (Exception ex) MessageBox.Show(數(shù)據(jù)記錄刪除失敗,無(wú)該記錄!); return; try DataColumn primaryKey = new Data

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論