商场购物管理系统Word文档格式.docx
《商场购物管理系统Word文档格式.docx》由会员分享,可在线阅读,更多相关《商场购物管理系统Word文档格式.docx(18页珍藏版)》请在冰豆网上搜索。
(1)系统选择主要是可选购买登录系统或管理员登录系统。
(2)用户登录是登录进入管理员身份。
(3)商品管理是对超市的所有商品信息进行统计,包括数量单价等。
(4)商品详情是查看统计顾客所要购买的商品的信息。
(5)付款界面是顾客付钱是所支付的钱。
图1.总体模块设计图
1.1.2系统设计
商场购物管理系统将所需功能整合在一起统一处理,方便了管理者的多种处理,节约时间、精力。
本系统采用C#编程语言,该语言是面向对象的编程语言,模块化处理,扩展性强,便于数据管理,同时也具有较高的安全性,易用性。
本系统采用.net
framework
框架结构,管理员登录后就可以对相关数据的操作,使用方便、简单,顾客可以直观的看到自己所买物品的信息并可以对不正确的信息提出申请修改。
本系统采用SQLSever语言进行数据库的连接,同时可对数据库信息进行备份、恢复及清空数据库操作。
数据库是商场购物管理系统的后台,存储着所有的信息,在商场购物管理系统中有着很重要的地位。
数据库设计的好与坏,直接影响到这个系统的运行效率。
良好的数据库设计,可以提高数据信息的存储效率,确保数据信息的完整性和一致性。
1.2论文主要工作和结构安排
该论文主要工作是在.NET操作系统下,利用c#开发语言,借助数据库SQLSever来实现一个商场购物管理系统。
其目标在于实现超市对库存商品的信息的清点以及对顾客购物的结算。
结构安排上,该论文主要分为绪论、系统功能、相关技术及工具介绍、总结四个部分,每一个部分具体分工如下:
1、绪论:
该部分主要介绍当前文件管理系统的背景及意义,以及论文主要工作及结构安排。
基于c#的商场购物管理系统能够安全方便地库存商品的整体动态信息,从而降低工作量。
2、系统功能:
该部分主要介绍该系统功能设计以及系统功能分析,从而能够展示整个系统的功能的规划。
3、相关技术及工具介绍:
该部分主要介绍系统所采用的技术及开发工具,涉及该系统采用的开发工具及技术,以及该系统涉及的数据库相关知识。
4.总结:
该部分主要介绍在整个管理系统实现过程中所遇到的细节性问题以及对今后的展望。
2系统功能
2.1系统功能设计
根据需求分析确定该系统划分为以下几个管理功能:
(1)系统选择
该界面用于选择进入哪种系统:
购买系统或管理员系统,点击相应的按钮则会进入对应的系统。
图2.系统选择界面图
(2)用户登录
点击管理员登录则进入该进入界面,输入账号密码进行用户登录,并且用户名和密码的信息是建立在数据库中的,如需添加管理员,直接添加在数据库中即可。
图3.用户登录界面图
表1.管理员信息表
(3)商品管理
该界面用于查看添加入库商品的信息以及库存商品的信息,并对库存商品的信息进行修改和查询。
在“添加”界面中按要求填入商品的名称、单价、数量,点击添加按钮即可。
在“修改删除”界面中,点击“查询”按钮即可看到所有商品的详细信息,若输入某商品名称仅查看到该商品的信息;
点击到商品信息的某一栏,更改数字,点击“修改按钮”则商品的这一信息就被修改成功。
图4.添加商品信息界面
图5.商品信息修改删除界面
(4)商品详情
点击“购买系统”则进入商品详情界面。
在“物品名称”栏选择顾客购买的商品并填写数量,点击“购买”,商品的数量价格就会出现在下方的列表中,并在“总价”一栏显示所有价格,直到将顾客购买的所有商品都录入完毕。
图6.购买商品情况界面
(5)付款
点击“结账”按钮,则进入该界面。
在“请你付款”一栏中填入顾客支付的钱,点击“确定”按钮,系统计算得出应找零的数值。
图7.付款界面
3相关技术及工具介绍
3.1系统采用的开发工具
该系统前台采Microsoft
公司的Visual
Studio
2010
作为主要的开发工具,可与SQL
Server
2008
数据库无缝连接。
Visual
2010具有无可比拟的强大功能,使用.NET
Framework
3.5
加速开发。
.NET
中的构建基块可以很方便的用于解决常见编程任务,能够快速构造出色应用程序。
C#是目前流行的一种编程应用程序,C#语言类似拥有类似java的语法,语言简单明了。
C#是在Java流行起来后所诞生的一种新的语言。
由于微软在操作系统上占有很大的优势。
在以往的开发中累积了不少经验,所形成的.net平台,所以C#在Windows方面可以说比Java具有更大的优势。
C#的强大是依赖于.net的发展,而.net的发展是看微软在.net上的决心和投入有多少。
1、C#.NET提供了丰富的框架,使用户在无需编写代码的前提下快速进行程序开发。
2、.NET对公共语言运行时的核心进行改进,大大提高了运行速度。
3、提高了Windows
Presentation
Foundation的性能。
4、实体框架是从ADO.NET数据访问技术基础发展而来的。
5、LINQ
to
SQL新增了支持SQL
Server2005中新日期和文件流的功能。
6、用于SQL
Server的.NET
Framework数据提供程序新增了对SQL
2005中的文件流和稀疏列功能的支持。
3.2系统采用的技术
该系统后台数据库采用Microsoft
SQL
数据库,该数据库系统在安全性、准确性和运行速度方面有绝对的优势,并且处理数据量大、效率高。
2005
包括了几个在企业级数据管理中关键的增强:
易管理、可用性、可伸缩性、安全性。
2005提供了一个唯一的管理控制台,使得数据管理人员能够在组织内的任何地方监视、管理和调谐企业中所有的数据库和相关的服务。
它还提供了一个可扩展的管理架构,可以更容易的用SQL管理对象(SMO)来编程,使得用户可以定制和扩展他们的管理环境。
4设计总结
该部分主要介绍在整个商场购物管理系统实现过程中所遇到的细节性问题以及对今后的展望。
4.1总结
通过几个月的上机实习,我对C#又有了崭新的认识。
C#的学习是一个系统的过程,需要长期的知识积累和储备并辅以大量的上级实际操作练习,自己也应该有所体会,在实践中成长,在实践中求知。
作为学生,我们更多的是课本的知识的理解,理论的优势是我们的特色,但是怎样将理论结合实际却是摆在我们面前的难题。
有些知识虽然我们学过,但是要把它运用到系统中的过程中还出现了很多问题,比如对于控件ListView和DataGridView的使用,在基于多表查询的时候,使用DataGridView这个控件就难以实现在数据库里的多张表的更新,后来我们还是选择了ListView这个控件。
从这里让我知道了,只是的学习是没有止境的,我们只有在不断的学习中了解更多,并且能够把所学的知识举一反三,这样我们才能更好的吧实训项目做得更好。
我觉得学习了这个,对我参加工作后制表、创建查询、数据分析和材料演示都有很大的作用,这样,我们能更清楚的了解信息并进行分析。
当然实习中还有着更多的感触,包括学习,生活各个方面。
就学习而言,专业实训它更偏重于应用,更加细致,要求也更加严格。
在实际中实现自己的理想,必需不断的增加自己的能力,做事情更加专注。
就生活而言,专业学习展示给我们看各个不同的
的实训结果,让我们知道了要善于学习他人的优点。
参考教程
(1)我要自学网.c#入门教程
附录
程序源码:
(1)管理系统
namespace商场管理系统
{
publicpartialclassForm1:
Form
{
publicForm1()
InitializeComponent();
}
privatevoidbutton1_Click(objectsender,EventArgse)//按下按钮跳转到Form5界面
Form5fr=newForm5();
fr.Show();
privatevoidbutton2_Click(objectsender,EventArgse)//按下按钮跳转到Form7界面
Form7fr=newForm7();
}
privatevoidbutton1_Click(objectsender,EventArgse)
if(textBox1.Text=="
"
)
MessageBox.Show("
请输入用户名?
);
else
if(textBox3.Text=="
请输入密码?
try
stringsource=Class1.get_address();
SqlConnectionconn=newSqlConnection(source);
conn.Open();
stringselect="
select[user],[password]from[login]where[user]='
+textBox1.Text+"
'
and[password]='
+textBox3.Text+"
;
SqlCommandcmd=newSqlCommand(select,conn);
SqlDataReaderdr=cmd.ExecuteReader();
if(dr.HasRows)
dr.Close();
//stringnwselect="
select*fromloginwherelname='
andlpassword='
//SqlCommandnwcmd=newSqlCommand(nwselect,conn);
//SqlDataReadernwdr=nwcmd.ExecuteReader();
Form6mdi=newForm6();
mdi.Show();
用户名或密码错误,"
conn.Close();
//this.Hide();
catch(Exceptionex)
MessageBox.Show(ex.Message);
privatevoidbutton2_Click(objectsender,EventArgse)
this.Close();
publicpartialclassForm6:
DataSetds=newDataSet();
SqlDataAdapterda=newSqlDataAdapter();
publicForm6()
stringinsert="
insertintotradevalues('
'
+textBox2.Text+"
)"
SqlCommandcmd=newSqlCommand(insert,conn);
cmd.ExecuteNonQuery();
该物品已添加成功"
"
提示"
MessageBoxButtons.OK);
privatevoidbutton3_Click(objectsender,EventArgse)
ds.Clear();
stringselect;
if(textBox4.Text=="
select="
select*fromtrade"
select*fromtradewherename='
+textBox4.Text+"
da=newSqlDataAdapter(select,conn);
da.Fill(ds,"
trade"
dataGridView1.AutoGenerateColumns=true;
dataGridView1.DataMember="
dataGridView1.DataSource=ds;
privatevoidbutton4_Click(objectsender,EventArgse)
SqlCommandBuildercb=newSqlCommandBuilder(da);
da.Update(((DataSet)dataGridView1.DataSource).Tables[0]);
已修改成功|"
privatevoidbutton6_Click(objectsender,EventArgse)
stringss=dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[0].Value.ToString();
//this.dataGridView1.SelectedCells[0].Value.ToString();
deletetradewherename='
+ss+"
你选中的物品·
+ss+"
\n已经删除成功|"
提示?
privatevoidbutton5_Click(objectsender,EventArgse)
publicpartialclassForm5:
privatefloatSprice=0;
publicForm5()
privatevoidInitData()
SqlConnectionmyCon=newSqlConnection();
myCon.ConnectionString=source;
myCon.Open();
stringSql="
selectnamefromtrade"
DataSetDs=newDataSet();
SqlDataAdapterDa=newSqlDataAdapter(Sql,myCon);
Da.Fill(Ds,"
comboBox1.DataSource=Ds.Tables["
];
comboBox1.DisplayMember="
name"
myCon.Close();
privatevoidlabel1_Click(objectsender,EventArgse)
stringss=comboBox1.GetItemText(comboBox1.Items[comboBox1.SelectedIndex]);
//获取当前项
if(textBox1.TextLength==0)
请输入购买数量?
SqlConnectionmyCon=newSqlConnection(source);
SqlCommandselectCMD=newSqlCommand("
myCon);
SqlDataReadercustDR=selectCMD.ExecuteReader();
custDR.Read();
strings1=custDR.GetString(custDR.GetOrdinal("
price"
));
strings2=custDR.GetString(custDR.GetOrdinal("
num"
custDR.Close();
intq=int.Parse(textBox1.Text);
intsnum=int.Parse(s2);
if(snum<
q)
对不起,库存不足,只剩余?
+s2+"
件t商品·
"
floattemp=float.Parse(s1);
stringS="
S+=q;
temp=temp*q;
Sprice+=temp;
strings="
s=s+Sprice;
textBox2.Text=s;
snum=snum-q;
stringsss="
sss+=snum;
stringssss="
ssss+=temp;
stringselectText="
updatetradesetnum='
+sss+"
wherename='
SqlCommandCMD=newSqlCommand(selectText,myCon);
SqlDataAdaptercus=newSqlDataAdapter();
cus.SelectCommand=CMD;
DataSetcustD=newDataSet();
cus.Fill(custD);
intitemNumber=this.listView1.Items.Count;
string[]subItem={ss,S,ssss};
this.listView1.Items.Insert(itemNumber,newListViewItem(subItem));
this.listView1.Items[itemNumber].ImageIndex=0;
privatevoidForm5_Load(objectsender,EventArgse)
InitData();
stringS1="
S1+=Sprice;
Form2fr=newForm2(S1);
privatevoidcomboBox1_SelectedIndexChanged