超市管理系统报告.docx

上传人:b****4 文档编号:24351262 上传时间:2023-05-26 格式:DOCX 页数:29 大小:1.30MB
下载 相关 举报
超市管理系统报告.docx_第1页
第1页 / 共29页
超市管理系统报告.docx_第2页
第2页 / 共29页
超市管理系统报告.docx_第3页
第3页 / 共29页
超市管理系统报告.docx_第4页
第4页 / 共29页
超市管理系统报告.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

超市管理系统报告.docx

《超市管理系统报告.docx》由会员分享,可在线阅读,更多相关《超市管理系统报告.docx(29页珍藏版)》请在冰豆网上搜索。

超市管理系统报告.docx

超市管理系统报告

河南科技大学

课程设计说明书

课程名称数据库课程设计

题目超市管理系统

 

院系国际教育学院

班级计科121

学生姓名赵岩

指导教师王红艺宋晓莉

日期2013-12-11

 

课程设计任务书

课程设计题目

超市管理系统

姓名

赵岩

学号

121425020143

专业班级

计算机科学与技术121班

组别

2012102-第一组

组长

方贤

同组成员

赵岩

指导

教师

王红艺宋晓莉

课程设计目的

通过本课程设计,使学生巩固数据库系统的基本概念、原理和技术,学会使用某一开发工具进行数据库设计和开发,将理论与实际相结合,完成一个小型数据库的设计与实现,并在此基础上强化学生的实践意识,提高其实际动手能力和创新能力。

课程设计环境

硬件:

装有windows操作系统的计算机

软件:

SQLServer2012及C++builder

课程设计任务和要求

任务:

1.进行超市前台销售系统的概念结构设计、逻辑结构设计和物理结构设计;2.设计并实现超市前台销售系统的大部分模块的界面设计和程序指导模块。

要求:

1.模块功能满足需求说明、保证一定性能要求。

2.撰写出符合要求的课程设计报告。

参考

文献

[1]王珊、萨师煊数据库系统概论(第四版)高等教育出版社2006;

[2]何玉洁、黄婷儿等译数据库设计教程机械工业出版社2003;

[3]卢卫忠、刘文亮等译C++builder程序设计教程科学出版社2005

[4]零点工作室C++builder6.0基础教程北京:

机械工业出版社2004-9

[5]郑阿奇等SQL使用教程(第二版)北京:

电子工业出版社2005

时间进度安排

序号

起止日期

工作内容

1

2012-5-28

讲授ER模型的设计,学生分组

2

2012-5-29~2012-5-31

概念结构和逻辑结构设计,形成数据库文件,建立模块化结构,组内学生分工

3

2012-6-1

讲授开发工具的使用,学生进行功能模块设计

4

2012-6-4~2012-6-7

编码、测试

5

2012-6-8

形成课程设计文档内容及格式撰写要求,讲授文档撰写方法,撰写课程设计报告

6

2012-6-11

验收程序,上交课程设计报告

指导教师签字:

2013年12月4日

目录

第一章:

绪论2

1.1开发背景2

1.2开发环境及开发工具的选择2

1.3本文主要内容2

第二章:

需求分析2

2.1总体需求分析2

2.2各个模块需求分析2

2.2总体设计3

2.2.1:

绘制系统的软件结构图;3

2.2.2设计完成的功能流程图:

4

2.3安全设计:

5

第三章:

数据库设计6

3.1概念结构设计6

3.2逻辑结构设计7

3.3物理结构设计8

第四章:

详细设计10

4.1.超市前台销售系统主界面及其代码:

10

4.2登录选择页面13

4.3管理人员页面14

第五章总结18

5.1结论18

5.2学习体会19

5.3致谢19

5.4参考文献19

第一章:

绪论

1.1开发背景

技术的提升和管理的升级是超市业的竞争核心。

零售领域目前呈多元发展趋势多种业态:

超市、仓储店、便利店、特许加盟店、专卖店、货仓等相互并存。

如何在激烈的竞争中扩大销售额、降低经营成本、扩大经营规模,成为超市营业者努力追求的目标提高超市的运作效率。

通过全面的信息采集和处理,辅助提高超市的决策水平;

使用本系统,可以迅速提升超市的管理水平,为降低经营成本,提高效益,超市扩张力,提供有效的技术保障。

1.2开发环境及开发工具的选择

Windows7SQLServer2012C++Builder6.0

1.3本文主要内容

本文详细介绍了数据库开发的过程,包括超市前台开发系统的背景、业务需求分析、功能需求分析、系统开发、系统编译及系统发行过程等步骤。

第二章:

需求分析

2.1总体需求分析

超市管理系统系统的说就是一个买卖西的系统:

超市管理是一个工作量非常大,而且非常繁杂的工作,包括进货,销售,月结等等;而进货又涉及供应商选择(涉及商品价格,商品质量和商品的受欢迎程度,缺少的商品等等),销售又包括导购,促销,售货,退货等;月结包括营业额,税收,商品统计和评估,营业员综合评估,打印报表。

同时又涉及多个对象,营业员,经理,消费者,每层都要把握好。

我们会用三个既分开有联系的系统,消费者导购系统,管理人员管理系统(包括经理),营业员销售系统;

2.2各个模块需求分析

本系统中共有消费者、营业员、管理人员、采购员

<1>消费者:

在超市中购物,可以通过导购,查看特色商品、打折商品、根据自己的会员等级的特色和打折商品,查看商品的各种属性,如:

证书,出厂日期,保质期等等等等,实现各种方法的商品查找,并能对商品进行打分,对营业员进行打分,并保存到后台数据库,以供管理人员和导购员分析查询;向营业员申请成为会员。

<2>营业员:

负责每天的销售工作,包括卖货和退货,并能够为消费者申请会员,提交每天的销售额,和销售信息,可以支持多种付款方式;

<3>采购员:

查看商品的每天的销售状况,比如那种商品销售的比较快,哪种比较慢,查看对商品的打分、评价,查看商品的保质期,出厂日期;查看供应商的资料,商品价格,选择最优的供应商;提交订单,有总经理审核后由采购员实施采购工作;

<4>管理人员

区块负责人:

负责一块(几个货架的正常工作),商品的上架,查看商品的销售状况

总经理:

负责整个超市的运营状况,增加删除营业员,区块负责人,采购员;查看营业员的业绩,打分,评价,销售状况,查看所有的;查看商品的销售状况,销售记录;审核采购员提交的订单;对对自己的操作产生记录,更新商品打折情况;

2.2总体设计

2.2.1:

绘制系统的软件结构图;

图2.1软件结构图

2.2.2设计完成的功能流程图:

消费管理

图2.2消费者功能图

营业员管理

图2.3营业员功能图

采购员功能

图2.4采购员功能图

区块负责人功能

图2.5区块负责人功能图

总体功能

图2.6总体功能图

2.3安全设计:

对于此超市前台销售系统,不同的角色实现不同的功能,

经理能完全对该系统功能模块的操作,而员工只能对销售管理模块进行操作。

保证了系统的安全性

第三章:

数据库设计

3.1概念结构设计

此数据库设计的概念结构采用自顶向下的方法如下:

图3.1整体E-R图

系统E-R图说明:

一位供应商可供应不同的商品

一件商品可有不同的供应商供应

一位业务员可负责不同的商品

一件商品可由不同的业务员负责

一件商品能被不同的顾客购买

一位顾客可购买不同的商品

3.2逻辑结构设计

管理人员(包括售货员):

职能表(职能ID,名字,note)

Functions(functionID(int),name(varchar(50)),note(varchar(MAX)));

权限职能表(职能ID,权限ID)

FunctionPower(functionID,powerID)

权限表(权限ID,权限名,描述);

Power(powerID(int),pname(varchar(20)),note(varchar(MAX)));

管理人员表(管理人员ID,姓名,电话,性别,地址,销售业绩(销售额),用户评分,描述,状态,密码,权限ID);

Admin(adminID(int),password(varchar(20)),name(varchar(20)),telephone(varchar(12)),sex(varchar(6)),addre(varchar(50)),achievement(money),grade(int),note(varchar(MAX)),stat(bit),powerID(int));

销售日志(ID,商品ID,数量,价格,优惠价,规格);

SalesLog(ID(int),goodID(int),number(int),price(float),discountprice(float),standards(varchar(50)));

售货员日志(ID,时间,收取,找零,会员ID,打折,营业员ID,售出退货,备注,销售额)

SaleOfAdmin(ID(int),time(datetime),getin(money),getout(money),memberID(int),discount(float),adminID(int),salesorreturn(bit),note(varchar(100)),get(money))

订单(ID,提交者ID,提交时间,阅读时间,阅读属性(读么读bit),批准否,批注,采购员ID,通过与否);

Orders(orderID(int),writerID(int),readtime(ddatetime),writetime(datetime),readed(bit),approve(bit),comment(varchar(MAX)),readID(int),getornot(bit));

供货(订单ID,供应商ID,商品ID,规格,数量,价格)

Supply(orderID(int),supplierID(int),goodID(int),standards(varchar(50)),number(init),price(money))

公告(公告ID,发布者ID,成功与否,内容,时间)

Anounce(ID(int),writeID(int),can(bit),contents(varchar(MAX)),time(datetime))

消费者:

会员(会员ID,密码,会员类型ID,会员名,性别,积分,联系电话,办理时间,介绍人ID);

Member(memberID(int),password(varchar(20)),typeID(int),name(varchar(20)),sex(varchar(20)),integral(int),telephone(varchar(50)),begintime(date),adminID(int));

会员类型(类型ID,会员类型名,时间段,打折,价格)

MemberType(typeID(int),name(varchar(10)),time(int),discount(float),price(money))

为售货员打分(ID,售货员ID,分值,评价,时间);

GradeForAdmin(ID(int),adminID(int),grade(int),note(varchar(MAX)),time(datetime));

为商品打分(ID,商品ID,分值,评价,时间);

GradeForGoods(ID(int),goodID(int),grade(int),note(varchar(MAX)),time(datetime));

商品:

商品(商品ID,类型ID,名字,颜色,产地,品牌,欢迎度,价格,描述,打折生产厂商);

Goods(goodID(int),type(int),name(varchar(50)),color(varchar(10)),area(varchar(50)),brand(varchar(50)),likegrade(int),price(money),note(varchar(MAX)),discountfloat),producer(varchar(50)));

商品类型(type,名字,note)

GoodType(type(int),name(varchar(50)),note(varchar(MAX)))

仓库(仓库ID,名字,描述);

Storage(storageID(int),name(varchar(20)),note(varchar(MAX)));

仓库—商品(仓库ID,商品ID,规格,数量,出厂日期,保质期,);

StorageGoods(storageID(int),goodID(int),standards(varchar(50)));

供货商(供货商ID,地址,描述,姓名,电话);

Supplier(supplierID(int),adder(varchar(20)),note(varchar(MAX)),name(varchar(20)),telephone(varchar(20)));

供货商主营商品(商品ID,供应商ID,规格,价格);

SupplierGoods(goodID(int),supplierID(int),standards(varchar(50)),price(money));

货架(货架ID,货架名(或位置),货架描述,管理员ID);

Shelfs(shelfID(int),name(varchar(20)),note(varchar(MAX)),adminID(int));

货架商品表(货架ID,商品ID,出厂日期,保质期,规格,数量);

GoodShelf(shelfID(int),goodID(int),borntime(date),ensuretime(date),standards(varchar(50)),number(int));

仓库供应货架商品(商品ID,货架ID,仓库ID,时间,数量,规格)

GoodsFromStorageToShelf(goodID(int),shelfID(int),storageID(int),time(datetime),number(int),standards(varchar(50)))

3.3物理结构设计

进一步将逻辑结构转化为物理结构,并进行必要的物理结构的设计

表3.1供货商表

字段名

字段类型

长度

主/外键

字段值约束

供货商ID

int

Primarykey

Notnull

地址

varchar

20

null

描述

varchar

Max

null

姓名

varchar

20

Null

电话

varchar

20

Null

表3.2管理人员表

字段名

字段类型

长度

主/外键

字段值约束

管理人员ID

int

4

Primarykey

Notnull

姓名

varchar

20

null

电话

varchar

12

null

性别

varchar

6

null

地址

varchar

50

null

销售业绩

money

null

用户评分

int

4

null

描述

varchar

max

null

状态

bit

null

密码

varchar

20

Notnull

权限ID

int

4

null

表3.3会员表

字段名

字段类型

长度

主/外键

字段值约束

会员ID

int

4

Primarykey

Notnull

密码

varchar

20

Notnull

会员类型ID

int

4

外键

Notnull

会员名

varchar

20

null

性别

varchar

20

null

积分

int

4

联系电话

varchar

50

办理时间

date

介绍人ID

int

4

表3.4商品表

字段名

字段类型

长度

主/外键

字段值约束

商品ID

int

4

Primarykey

Notnull

类型ID

int

4

外键

Notnull

名字

varchar

50

null

颜色

varchar

10

null

产地

varchar

50

null

品牌

varchar

50

欢迎度

int

4

价格

money

描述

varchar

max

打折

float

生产厂商

varchar

50

第四章:

详细设计

4.1.超市前台销售系统主界面及其代码:

图4.1登陆页面

本页面是个登陆页面,本页面可以实现登陆到系统内部的功能。

代码如下

if(Edit1->Text==""&&Edit2->Text=="")

        {

            Label3->Caption="用户名和密码不能为空";

        }

        else if(Edit1->Text=="")

        {

            Label3->Caption="用户名不能为空";

        }

        else if(Edit2->Text=="")

        {

            Label3->Caption="密码不能为空";

        }

        else

        {

    //数据连接

    TADOQuery *select1=new TADOQuery(this);

    //数据过滤

    select1->Connection=ADOConnection1;

    if(RadioButton1->Checked==true)

    {

        select1->SQL->Add("select password,adminID from Admins,Power where Admins.powerID=Power.powerID and Power.name='营业员' and adminID="+Edit1->Text);

        select1->Open();

        if(select1->Eof)

        {

            Label3->Caption="不存在此用户名";

            FormActivate(Sender);

        }

        else

        {

            if(Edit2->Text==select1->FieldByName("password")->AsString)

            {

                AdminID=select1->FieldByName("adminID")->AsString.ToInt();

                if(NameSale->Visible==false)

                    NameSale->Visible=true;

                else

                    NameSale->Show();

                Assistant->Visible=false;

            }

            else

            {

                Label3->Caption="密码错误";

                FormActivate(Sender);

            }

        }

    }

    else

    {

        select1->SQL->Add("select password,adminID from Admins,Power where Admins.powerID=Power.powerID and adminID="+Edit1->Text);

        select1->Open();

        if(select1->Eof)

        {

            Label3->Caption="不存在此用户名";

            FormActivate(Sender);

        }

        else

        {

            if(Edit2->Text==select1->FieldByName("password")->AsString)

            {

                Admin->adminID=select1->FieldByName("adminID")->AsString.ToInt();

                if(Admin->Visible==false)

                    Admin->Visible=true;

                else

                    Admin->Show();

                Assistant->Visible=false;

            }

            else

            {

                Label3->Caption="密码错误";

                FormActivate(Sender);

            }

        }

    }

4.2登录选择页面

图4.2主页面

本页面可以选择登录入口类型,来进行不同的操作代码设计如下

消费者入口代码

if(Member->Visible==false)

Member->Visible=true;

else

Member->Show();

Index->Visible=false;

营业员入口代码

sale=1;

    if(Assistant->Visible==false)

    Assistant->Visible=true;

else

    Assistant->Show();

Index->Visible=false

管理员入口代码

sale=0;

Index->Visible=false;

if(Assistant->Visible==false)

Assistant->Visible=true;

else

Assistant->Show();

4.3管理人员页面

图4.3管理人员管理界面

此界面为点击人员管理后的进入界面。

点击管理人员入口,进入管理员管理界面,实现对管理人员的增加、停职、搜索和修改等功能。

同时对管理人员进行区块划分。

新增、修改代码

if(ComboBox1->Text=="")

    {

        ShowMessage("请选择身份");

        return;

    }

    if(Edit4->Text=="")

    {

        

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 药学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1