目录
图书销售系统
摘 要
随着Internet的迅速崛起,网络信息化的发展,在线图书销售作为一种典型的Web电子商务系统也迅速的发展并深入人们的日常生活中。更多的人更愿意足不出户就可以挑选购买自己喜欢的各种书籍,这样大大缩短了购书的时间,提高了效率。可见,网上图书销售系统跨越了时间和空间的限制,给商业流通领域带来了不一样的变革,也给消费者带来了便捷。本系统采用B/S结构进行设计,是在.NET环境下使用Visual C#.net语言开发的一个功能完善的网上图书销售系统。其具有一定的实用性,用户可以在网上浏览图书信息,查找图书资料,将感兴趣的书籍加入收藏夹,或放入购物车并下订单购买;同时,管理员也可以对整个系统的信息和数据进行管理,可以管理库存书信息、分类信息、出版社信息、用户信息和订单信息。此外,本论文采用的分析方法和设计过程具有一定的普遍性,可以应用到其它系统的开发设计当中。
关键词:网上购书系统;.NET;电子商务;数据库
Bookshop Management System
Abstract
With the rapid rise of Internet, the development of network information technology, web bookshop system as a typical electronic commerce system also develops rapidly and deeps into people’s life. More and more people could be willing to select and buy their favorite books at home, so that is greatly reducing the time of shopping, and improving the efficiency. Obviously, the web bookshop management system has crossed the constraint of the time and the space, it not only brings a different change to the commercial domain, but also brings convenient to the consumers. The system used B/S structure and developed a well-functioning online book sales system with the use of Visual C#.net language based on .NET. Also, the system has some practicality, customers can browse the details of books on Internet, search information of books, and add the books which they like to the favorites, or put them to the shopping cart and place an order to buy them. At the same time, Administrators can manage the entire system’s information and data, as the information of inventory, category, publishers, customers and orders. In addition, the analysis method and design process in the thesis have some universality, and can be applied to design other application system.
Key words: Web bookshop system; .NET; Electronic commerce; Database
第一章 绪论
1.1 选题意义和背景
信息在社会和经济的发展中所起的作用越来越为人们所重视。信息资源的开发利用水平成为衡量一个国家综合国力的重要标志之一。计算机作为信息处理的工具,为适应数据处理需求的迅速提高,满足各类信息系统对数据管理的要求,在文件系统的基础上发展基础数据库系统,数据库方法针对事物处理中大量数据管理需求。我国自从80年代上半期,国家计委统计局计算中心在第一次全国人口普查、工业普查中使用了数据库管理技术以来,随着微机管理系统的推广,数据库应用逐渐普及。因此大力开发管理系统:
计算机代替人工进行,许多繁杂劳动。
计算机可节省许多资源。
计算机大大提高人们的工作效率
计算机加密使文档更安全。
数据库管理系统是数据处理的核心机构,管理信息系统、办公自动化系统、政策支持等都是使用了数据库管理系统或数据库技术的计算机应用系统。在信息时代纸介质的传统管理方法必然被计算机为基础的信息管理所取代。
第二章 系统需求分析
本管理系统在对现有图书销售方式上与电子销售方式的基础上,对现有存图书,现有销售员,现有管理员进行统一数字化管理,为图书销售工作人员提供明确,有效的信息,使工作人员工作更方便,更简单.
2.1本系统开发目的
本需求分析的目的在于研究图书销售管理系统 的开发途径与应用方法.本需求分析的对象与图书销售管理系统 开发有联系的决策人,图书销售系统管理员,图书销售经理人,图书销售人员,顾客,以及支持本项目的领导和工作人员,软件验证者.
2.2开发背景
本项目的名称:图书销售管理系统.本项目的提出者和开发者是图书销售店与管理系统的开发者,用户是各种图书销售,图书市.本系统实现了图书销售,管理的信息化,并能向顾客提供各种图图书销售,对经理人提供各种有关图书销售,管理的信息,以及动态的销售行情.本系统能够与互联网相连来实现图图书的网上销售.
2.3 定义
图书销售与管理系统:系统指对顾客提供的各种服务,包括查询服务,留言服务,会员管理系统.管理系统指向图书销售经理人提供信息,向销售人员以及管理员提供所求信息.
第三章 可行性分析报告与项目开发计划
3.1可行性分析
随着社会发展的多元化,信息化,图书销售的管理已经成为一个令人头痛的事情。由于现有的图书种类繁多,顾客需求量大,以及帐目数大,交易速度快,如何在最短的时间内,对各种图书进行有效的管理,以及如何让管理人对现有的销售情况有一个明确的了解,已成为十分迫切的问题.
3.2项目概述
本系统是基于数据库对图书销售的销售,管理进行统一管理的软件.通过对几个图书销售的调查,可以得知现有的图书销售有如下的不足与缺陷。
第一,顾客在购图书前对本图书销售的查询,在原有的条件下,顾客买图书需要耗费大量的时间去图书架去查图书,并且往往不满意,那么就需要一个系统能够方便顾客的查询,如果可能的话,还应能方便互联网上的网民上网查询。
第二,顾客在购买图书后,图书销售能方便的做出相应的记录,并且打印出相应的记录。系统可以模仿现有的超市系统。
第三,由于现有的图书销售方式仍然有效,那么我们应方便图书架的管理,让管理图书架的管理员对图书架有一个清晰的了解,知道有什么,缺什么图书,做到适时的对图书架增加图书,并让管理员做出相应记录。
第四,经理人需要对本图书销售图书的销售有一个清楚的了解,如一个月一次的销售报表等,还有经理人还能通过本系统实现对管理员的管理,对购图书做出决定,对本图书销售的帐目进行管理等等。
第五,负责供图书的管理员对经理人决定的进图书定货单进行管理与保存,对实际到货进行查验,记录,生成到货单等等。
第六,对加入本图书销售的会员进行统一管理,实现优惠购图书,与图书销售经理人进行交流等等。
第四章 数据库的设计
4.1 SQL Server 2005 简介
SQL Server 2005 是微软公司开发的中型关系数据库管理系统。由于其操作简单,价格相对较低,对于预算紧张、员工不多的中小企业比较有吸引力。SQL Server 2005 简单易学,与当前流行的Windows 操作系统有着天然的兼容性,SQL Server 2005在中小型企业中有着很大的市场份额,所以对读者就业后快速适应工作环境有很大的帮助,SQL Server 2005 是微软进军数据库市场的主要产品,而且可以预见,微软将推出更有竞争力的SQL Server 系列软件。由于数据库软件在企业级软件中的重要性,同一家公司数据库软件将有着相同或相近的操作界面和良好的兼容性。
SQL Server 2005 以其卓越的性能逐渐成为Windows操作系统平台下进行数据库应用开发中较为理想的选择之一。它是一个后台数据库管理系统,其功能强大、操作简便,日益为广大数据库用户所喜爱,越来越多的开发工具提供了与SQL Server的接口。了解和掌握SQL Server的功能,对于一个数据库开发管理人员来说非常必要[2]。
SQL Server 2005常见版本有:
4.1.1企业版(Enterprise Edition)
支持所有SQL Server 2005的功能。该版本多用于大中型产品数据库服务器,并且可以支持大型网站,企业OLTP(联机事务处理)和大型数据仓库系统OLAP(联机分析处理)所要求的性能。
4.1.2标准版(Standard Edition)
实用范围是小型的工作组或部门。它支持大多数的SQL Server2005功能。但是,不具有支持大型数据库,数据仓库和网站的功能。3、个人版(Personal Edition)
主要适用于移动用户,因为他们经常从网络上断开,而运行的应用程序却仍然需要SQL Server 2005的支持。除了事务处理复制功能以外,能够支持所有SQL Server 2005标准版支持的特性。
4.1.3 开发者版(Developer Edition)
适用于应用程序开发的版本,支持除图形化语言设置以外的SQL Server2005的所有其它功能。
4.2 数据库概念结构设计
SQL Server 2005数据库主要是对图书的管理和销售,图书管理可分为图书的编号、图书名称、图书出版社,图书作者和图书的单价。图书销售分为销售额,编号,数量,日期时间和书名。书店管理人员可以查看图书的剩余数量以方便添加新的图书,书的读者也可以查看书的目录看是否有自己需要的图书。销售人员则按照销售管理出售读者要购买的图书而且能非常方便的看出书的价格最后查账的时候也可以方便的看书某书的销售额和某日的销售额。如图2.1所示。
4.3 数据库逻辑结构设计
表4.3.1是图书信息:名称,版次,单价,编号,类型,出版日期
表2. 1图书信息表(Shuji)
4.3.2销售信息表(XiaoShou)
表4.3.2是销售书的编号书名数量销售额日期时间。
表4.3.2销售信息表(XiaoShou)
第五章 系统设计
5.1系统开发工具介绍
C#是可用于创建要运行正在.NET CLR上的应用程序的语言之一,它从C和C++语言演化而来,是Mincrosoft专门为使用,NET平台而创建的。因为C#是近期发展起来的,所以吸取以前的教训,考虑了其他语言的许多有点,并解决他们的问题。使用C#开发程序比使用c++简单,因为其语法比较简单。但是,C#是一种强大的语言,在c++中能完成的任务利用C#也能完成。如前所述,C#中与C+=比较高级的功能等价功能。C#的优点是,他是唯一为,NET Framework设计的语言,是在一直到其他操作系统上的MNET版本中使用的主要语言。要使语言如VB。net尽可能类似与其以前的语言,且遵循CLR,就不能完全支持。net代码库的某些功能。但C#能使用,net framework代码库提供的某种功能,C#派生于C/C++的简洁语法,这种语法简化以前困扰一些程序员的问题。景观做了这些简化,但C+保持了C++原来的功能,所以现在没有理由不从C++转向c#,这种语言并不难,易于学习。
5.2系统模块设计
图书销售系统的功能结构如图5.2所示。
图5.2系统功能图
5.2.1 登录模块
登陆模块需要管理人员、采购员或销售员的账号和密码。如图5.2.1
图5.2.1,用户登陆界面
5.2.2 管理模块
管理界面,提供本系统功能,分别是采购管理,销售管理,查询统计,参数管理。
如图5.2.2
图5.2.2,图书销售系统管理界面
; Login login = new Login();
login.ShowDialog();
//login.Qx
yhid = login.Yhid;
this.WindowState = FormWindowState.Maximized;
this.statusStrip1.Items[0].Text="用户:"+login.Username;
switch (login.Qx)
{
case "2":
销售查询ToolStripMenuItem.Visible = false;
参数管理ToolStripMenuItem.Visible = false;
销售管理ToolStripMenuItem.Visible = false;
toolStripButton2.Visible = false;
toolStripButton4.Visible = false;
break;
case "3":
参数管理ToolStripMenuItem.Visible = false;
采购查询ToolStripMenuItem.Visible = false;
采购管理ToolStripMenuItem.Visible = false;
toolStripButton1.Visible = false;
toolStripButton3.Visible = false;
break;
}
采购管理界面,将图书信息输入计算机,价格,数量等以方便管理 如图5.2.3
图5.2.3,采购管理界面
private void button1_Click(object sender, EventArgs e)
{
ShuJuClass sj = new ShuJuClass();
string sql = "insert into caigou(sjid,cgshuliang,cgjiage,yhid,ghsid,beizhu) values('" + tsst.ID + "','" + textBox3.Text + "'," + textBox4.Text + ",'"+" 1"+ "','" +ghsst.ID + "','" +richTextBox1.Text+ "') ";
sj.ExChange(sql);
Query();
}
void Query()
{
ShuJuClass sj = new ShuJuClass();
CGDGV.DataSource = sj.QueryTable("select * from caigou");
销售管理,数量出售图书.如图5.2.4
图5.2.4 图书销售界面
查询管理:用于实现查询采购,和销售。.
oid Query()
{
ShuJuClass sj = new ShuJuClass();
XSDGV.DataSource = sj.QueryTable("select * from xiaoshou");
}
private void button1_Click(object sender, EventArgs e)
{
ShuJuClass sj = new ShuJuClass();
string cgsl = sj.QuerySigle("select isnull(sum(cgshuliang),0) from caigou where sjid="+tsst.ID);
string xssl = sj.QuerySigle("select isnull(sum(xsshuliang),0) from xiaoshou where sjid=" + tsst.ID);
int sysl = int.Parse(cgsl) - int.Parse(xssl);
if (sysl >= int.Parse(textBox3.Text))
{
string sql = "insert into xiaoshou(sjid,xsshuliang,zhekou,yhid,beizhu) values('" + tsst.ID + "','" + textBox3.Text + "'," + textBox4.Text + ",'" + " 1" + "','" + richTextBox1.Text + "') ";
sj.ExChange(sql);
Query();
}
else
{
MessageBox.Show("剩余数量为"+sysl.ToString()+"!");
}
}
输入日期,可查询该日期采购信息和销售图书信息.如图5.2.5 5.2.6
图5.2.5 销售查询界面
private void button1_Click(object sender, EventArgs e)
{
ShuJuClass sj = new ShuJuClass();
string sql = "select id,sjid,xsshuliang,zhekou,xsshijian from xiaoshou where xsshijian>='"
+ dateTimePicker1.Value.ToString("yyyy-MM-dd") + " 00:00:00"
+ "'and xsshijian<='"
+ dateTimePicker2.Value.ToString("yyyy-MM-dd") + " 23:59:59" + "'";
XSDGV.DataSource = sj.QueryTable(sql);
}
5.2.6采购查询界面
private void button1_Click(object sender, EventArgs e)
{
ShuJuClass sj = new ShuJuClass();
string sql="select id,sjid,cgshuliang,cgjiage,cgshijian,ghsid from caigou where cgshijian>='"
+dateTimePicker1.Value.ToString("yyyy-MM-dd")+" 00:00:00"
+"'and cgshijian<='"
+dateTimePicker2.Value.ToString("yyyy-MM-dd")+" 23:59:59"+"'";
CGDGV.DataSource = sj.QueryTable(sql);
}
参数管理由供货商管理,图书管理,图书类型管理,用户管理组成。如图5.2.6 5.2.7
ShuJuClass sj = new ShuJuClass();
DataTable DT1 = sj.QueryTable("select id,ghsmingcheng,ghsdianhua,ghsdizhi,ghsyoubian from gonghuoshang");
GHSDGV.DataSource = DT1;
}
string id;
private void GHSDGV_CellClick(object sender, DataGridViewCellEventArgs e)
{
int rowindex = e.RowIndex;
if (rowindex > -1 && rowindex < GHSDGV.RowCount)
{
id = GHSDGV.Rows[rowindex].Cells[0].Value.ToString();
textBox1.Text = GHSDGV.Rows[rowindex].Cells[1].Value.ToString();
textBox2.Text = GHSDGV.Rows[rowindex].Cells[2].Value.ToString();
textBox3.Text = GHSDGV.Rows[rowindex].Cells[3].Value.ToString();
textBox4.Text = GHSDGV.Rows[rowindex].Cells[4].Value.ToString();
}
}
图5.2.6,供货商管理
ShuJuClass sj = new ShuJuClass();
DataTable DT1 = sj.QueryTable("select id,mingcheng,banci,dingjia,isbn,leixingid,chubanriqi from shuji");
SJDGV.DataSource = DT1;
}
comboBox1.SelectedValue = SJDGV.Rows[rowindex].Cells["leixing"].Value.ToString();
dateTimePicker1.Value = DateTime.Parse(SJDGV.Rows[rowindex].Cells["chubanriqi"].Value.ToString());
ShuJuClass sj = new ShuJuClass();
ZZDT= sj.QueryTable("select id, zzmingcheng from zuozhe where sjid="+id);
ZZDGV.DataSource = ZZDT;
CBSDT = sj.QueryTable("select id,cbs ,cbsdianhua from chubanshe where sjid="+id);
CBSDGV.DataSource = CBSDT;
}
}
private void button1_Click(object sender, EventArgs e)
{
ShuJuClass sj = new ShuJuClass();
SqlConnection con = new SqlConnection(sj.Constr);
SqlTransaction tran = null;
SqlCommand cmd = new SqlCommand();
cmd.Connection = con;///
try
{
con.Open();
tran = con.BeginTransaction();
cmd.Transaction = tran;
//添加图书//
string sql = "insert into shuji(mingcheng,banci,dingjia,isbn,leixingid,chubanriqi) values('" + textBox1.Text + "','" + textBox2.Text + "'," + textBox3.Text + ",'" + textBox5.Text + "','" + comboBox1.SelectedValue.ToString() + "','" + dateTimePicker1.Value.ToString("yyyy-MM-dd") + "') ";
cmd.CommandText = sql;
cmd.ExecuteNonQuery();
//获取id//
sql = "select @@identity";
cmd.CommandText = sql;
string tssjid = cmd.ExecuteScalar().ToString();
//添加作者//
foreach (DataRow dr in ZZDT.Rows)
{
sql = "insert into zuozhe(zzmingcheng,sjid) values('" + dr["zzmingcheng"].ToString() + "','" + tssjid + "')";
/
cmd.CommandText = sql;
cmd.ExecuteNonQuery();
}
图5.2.7图书管理
ShuJuClass sj = new ShuJuClass();
/*YHDGV.DataSource */
DataTable DT1 = sj.QueryTable("select id,lxmingcheng from tushuleixing");
图5.2.8,图书类型管理
DataTable DT = new DataTable();
DT.Columns.Add("id", typeof(string));//在datagidview里添id列
DT.Columns.Add("name", typeof(string));
DT.Rows.Add("1", "系统管理员");//在combox的下拉列表添加特定文字
DT.Rows.Add("2", "采购员");
DT.Rows.Add("3", "销售员");
comboBox1.DataSource = DT;//显示出文字
comboBox1.DisplayMember = "name";
comboBox1.ValueMember = "id";
第六章 测试
软件测试是软件开发过程的重要组成部分,是用来确认一个程序的品质或性能是否符合开发之前所提出的一些要求。
举例:在“采购录入”输入,如下:
测试的结果如下:
在“采购录入”输入,如下
测试结果如下:
第七章 结 论
随着互联网的飞跃发展, 生活越来越离不开信息。
本次课程设计完成的图书销售系统,主要有图书采购和图书销售两部分。
《图书销售系统》属于典型的数据库管理系统,是针对各书店图书销售管理开发设计的,实现进一步的计算机化的管理。
本课程设计采用良好的销售管理理念,系统从完善的书籍信息管理添加图书,删除图书,图书剩余查询),到销售图书(图书销售,图书销售查询)可以很好的体现图书销售系统的方便快捷。
如今信息产业的进步,计算机基于语言基础融合了强大的数据库开发能力,是一种非常好的数据开发工具。事实证明,试卷生成系统在数据管理体系中的应用,使数据管理更现代化、自动化、智能化、人性化。减轻了书店销售人员的工作量,使其变得更具有条理性,科学性,为书店以及读者做出了巨大的贡献。为了适应现代社会人们高度强烈的时间观念,图书销售系统软件为各书店提供方便的条件。
图书销售系统主要包括登陆,退出,帐号以及密码输入,管理人员可进行图书信息查询,添加,删除,图书销售系统操作方便快捷,内容全面丰富,页面美观完整,大部分功能基本达到图书销售系统的要求。
本课程设计还有很多不足之处,例如无法添加会员功能等。还有其他的不足之处,界面做的不够完善、不够美观等等,都会在以后的学习生活中使之功能更加强大,界面更加的美观和华丽。
第八章 参考文献
[1]刘国燊编著【数据库技术基础及应用】北京:电子工业出版社.2003年9月.
[2]杨学全主编,赵慧勤,李英杰,张永周编著【SQLServer2000实例教程】北京:电子工业出版社.2004年7月
[3]史济民,顾春华,李昌武,苑荣编著【软件工程——原理、方法与应用】北京:高等教育出版社.2004年1月.
[4]张海藩编著【软件工程导论】北京:清华大学出版社.2005年10月.
[5]张奇,李律松,卫建伟等编著【VisualC#数据库项目案例导航】北京:清华大学出版社.2005年6月.
[6]邹建峰等【C#企业级开发案例精解】北京:人民邮电出版社.2006年1月.
[7]KoureshArdestani著,张哲峰译【高效掌握ADO.NET】北京:清华大学出版社.2003年3月.
[8]石志国编著【C#.NET程序设计实用教程】北京:电子工业出版社.2006年4月.
[9]李万宝主编【C#.NET技术详解与应用实例】北京:机械工业出版社.2005年9月