资源描述
商店进销存管理系统
数据库设计说明书
拟制人 吴静 杜茂坤
审核人
批准人______________________
【2013年1月18日星期五】
数据库设计说明书
1.引言
1.1编写目的
随着计算机技术的高速发展,人们对计算机的依赖性越来越强,特别是用计算机开发的数据库以及数据管理系统在生活应用中表现得更为突出。随着超市规模的发展不断扩大,商品数量急剧增加,有关商品的各种信息量也成倍增长。超市时时刻刻都需要对商品各种信息进行统计分析。
作为国内市场的一些中小型商店,它们在信息化过程中的步伐要落后于大型超市,而对于这些企业的资源管理,信息的存储和处理也显得迫切需要,要适应市场竞争,就需要有高效的处理方式和管理方法。因此,针对中小型商店开发一个商店进销存管理系统是非常必要的。
通过使用商店进销存管理系统,使商店的管理工作系统化、规范化、自动化、简易化、智能化,从而达到提高超市进销存管理效率的目的。商店进销存管理系统其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。对于前者要求建立数据一致性和完整性强,数据安全性好的数据库。而对于后者则要求应用程序功能完备,易使用等特点。系统实现了商品信息管理,商品进货操作,商品出货操作,库存信息查询等功能。本文详细地介绍了软件的开发环境、数据库的设计、各个模块的设计和实现及具体界面的设计和功能。
1.2背景
a. 待开发软件系统的名称:
商店进销存管理系统
b. 本项目的任务提出者:
石河子大学
c. 本项目开发者:
吴静,杜茂坤
d. 本项目用户:
商店员工
1.3 参考资料
[1] Mark Priestley.面向对象设计uml实践 [M].龚晓庆,卞雷等译.北京:清华大学出版社,2005.
[2] 郑人杰,马素霞,殷人昆.软件工程概论 [M].北京:机械工业出版社,2011.
[3] 王珊,萨师煊.数据库系统概论概论 [M].北京:高等教育出版社,2005.
[4] 卢瀚,王春斌.java web开发实战1200例[M].北京:清华大学出版社,2011.
2.结构设计
2.1 界面设计
整个系统从符合操作简便、界面友好、灵活、实用、安全的要求出发,完成进货、销售、库存管理的全过程。
系统的登录界面如图2.1。
图2.1系统登陆界面
系统首页如图2.2所示。
图2.2系统首页
商品添加页面如图2.3所示。
图2.3商品添加页面
商品查询界面如图2.4所示。
图2.4商品查询界面
密码修改界面如图2.5所示。
图2.5密码修改界面
2.2 逻辑结构设计
(1)局部E-R图
商品及商品属性之间存在属于的关系,如图2.6所示。
图2.6
商品、供应商及之间存在着供应入库的关系,E-R图如图2.7所示。
图2.7
商品和仓库之间存在图2.8所示关系。
图2.8
商品和顾客之间存在销售的关系,如图2.9所示。
图2.9
(2)全局E-R图
图2.10
2.3关系模型设计
商品类型(类型号,类型名,说明)
商品(商品号,商品名,类型号,单价,单位,规格,说明)
供应商(供应商号,供应商全称,地址,联系人,电话,电子邮箱,开户银行,开户账号)
顾客(顾客号,顾客全称,地址,联系人,电话,电子邮箱,开户银行,开户账号)
业务员(业务员号,工资,登陆名,密码)
仓库(仓库号,面积,单位)
入库单(供应单号,供应商号,业务员号,应付,实付,未付,是否付清,日期)
入库详单(商品号,仓库号,供应单号,数量,金额)
销售单(流水号,业务员,应收,实收,未收,是否结清,销售日期)
销售详单(商品号,流水号,数量,金额)
转仓详单(转仓单号,商品号,转出仓库,转入仓库)
库存(仓库号,商品号,库存量)
2.4 关系图
(1) 入库管理关系图
图2.11
(2)销售管理关系图
.
图2.12
(3)转仓关系图
图2.13
2.5物理结构设计
表2-1 splb(商品类别)
字段名
数据类型
长度
说明
意义
ID
varchar
20
Primary key
类型号
lxname
varchar
20
Not null
类型名
memo
varchar
100
说明
表2-2 tb_brand(商品)
字段名
数据类型
长度
说明
意义
ID
varchar
20
Primary key
商品号
spname
varchar
20
Not nul
商品名
splb
varchar
10
Foreign key
类型号
dj
money
not null
单价
dw
Varchar
10
not null
单位
gg
Varchar
50
规格
memo
varchar
100
说明
表2-3 tb_ck(仓库)
字段名
数据类型
长度
说明
意义
ID
Int
Primary key
仓库号
ckmj
Float
面积
mjdw
Varchar
6
单位
memo
varchar
100
说明
表2-4 tb_supplier(供应商)
字段名
数据类型
长度
说明
意义
ID
Int
Primary key
供应商编号
gysname
varchar
50
Not null
供应商全称
address
varchar
100
Not null
地址
Lxr
varchar
50
联系人
lxrtell
varchar
50
Not null
联系电话
khyh
varchar
50
开户银行
gysemail
varchar
50
电子信箱
表2-5 tb_customer(顾客)
字段名
数据类型
长度
说明
意义
ID
Int
Primary key
客户编号
khname
varchar
50
Not null
客户全称
address
varchar
100
Not null
地址
Lxr
varchar
50
联系人
lxrtell
varchar
50
Not null
联系电话
khyh
varchar
50
开户银行
gysemail
varchar
50
电子信箱
表2-6 tb_user(业务员)
字段名
数据类型
长度
说明
意义
ID
Int
Primary key
业务员编号
username
Varchar
40
用户名
Password
varchar
40
密码
表2-7 tb_rkd(入库单)
字段名
数据类型
长度
说明
意义
ID
varcahr
20
Primary key
供应单号
GysID
Int
Foreign key
供应商号
czy
varcahr
10
操作员
yf
Money
应付
sf
Money
实付
Wf
Money
未付
whether
Varchar
2
是否付清
rkdate
datetime
验收日期
表2-8 tb_ruku(供应详单)
字段名
数据类型
长度
说明
意义
spID
Varchar
20
Foreign key
商品号
ckID
Varchar
20
Foreign key
供应单号
sl
Int
数量
Je
Money
金额
Rkid
Varchar
20
入库单号
表2-9 tb-selld(销售单)
字段名
数据类型
长度
说明
意义
ID
Varchar
20
Primary key
流水号
kyID
Int
Foreign key
客户号
ys
money
应收
ss
money
实收
Ws
Money
未收
jq
Varchar
2
是否结清
xsdate
date
销售日期
表2-10 tb_sell(销售详单)
字段名
数据类型
长度
说明
意义
spID
Varchar
10
Foreign key
商品号
Selld
Varchar
20
Foreign key
流水号
sl
int
数量
je
Money
金额
表2-11 tb_zc(转仓单)
字段名
数据类型
长度
说明
意义
ID
varchar
20
主键
spID
Varchar
20
Foreign key
商品号
Zcck
Int
Foreign key
转出库编号
Zrck
Int
Foreign key
转入库编号
表2-12 tb_kc(库存)
字段名
数据类型
长度
说明
意义
ckID
Varchar
20
Foreign key
仓库号
spID
Varchar
20
Foreign key
商品号
kcSl
int
库存量
kcje
Money
金额
3 存储过程脚本
(1)创建存储过程统计指定时间段内各种商品的进货数量
create proc pro_rksl
@starttime datetime,@endtime datetime,@spid varchar(20),@totalsl int output,@totalje money output
as
select @totalsl=sum(sl),@totalje=sum(je) from tb_ruku,tb_rkd where tb_rkd.ID=tb_ruku.rkd and rkdate between @starttime and @endtime group by spid having spid=@spid
(2)创建存储过程统计指定时间段内各种商品的销售数量
create proc pro_xssl
@starttime datetime,@endtime datetime,@spid varchar(20),@totalsl int output ,@totalje money output
as
select @totalsl=sum(sl),@totalje=sum(je) from tb_sell,tb_selld where tb_selld.ID=tb_sell.selld and xsdate between @starttime and @endtime group by spid having spid=@spid
4 触发器脚本
(1)当商品入库时自动增加该商品的库存量
create trigger tri_sprk
on tb_ruku for insert
as declare @oldsl int,@oldje money,@spid varchar(20),@ckid int,@ckid1 int,@rksl int,@rkje money
select @ckid1=0
select @spid=spid,@ckid=ckid,@rksl=sl,@rkje=je from inserted
select @ckid1=ckid from tb_kucun where spid=@spid
if @rksl>0
begin
if @ckid=@ckid1
begin
select @oldsl=kcsl,@oldje=kcje from tb_kucun where spid=@spid
update tb_kucun set kcsl=@oldsl+@rksl,kcje=@oldje+@rkje where spid=@spid
return
end
if @ckid1=0
begin
insert into tb_kucun values(@spid,@ckid,@rksl,@rkje)
return
end
end
rollback transaction
(2)当商品销售时自动修改各仓库的库存量
create trigger tri_spxs
on tb_sell for insert
as declare @oldsl int,@spid varchar(11),@xssl int,@oldje money,@xsje money
select @spid=spid,@xssl=sl,@xsje=je from inserted
select @oldsl=kcsl,@oldje=kcje from tb_kucun where spid=@spid
if @xssl>0 and @oldsl>@xssl
begin
update tb_kucun set kcsl=@oldsl-@xssl,kcje=@oldje-@xsje where spid=@spid
return
end
rollback transaction
(3)当商品转仓时自动修改各仓库的库存量
create trigger tri_spzc
on tb_zc for insert
as declare @kcsl int,@kcje money,@zcck int,@zrck int,@spid varchar(20)
select @spid=spid,@zcck=zcck,@zrck=zrck from inserted
select @kcsl=kcsl,@kcje=kcje from tb_kucun where spid=@spid and ckid=@zcck
if @kcsl>0
begin
delete from tb_kucun where spid=@spid and ckid=@zcck
insert into tb_kucun values(@spid,@zrck,@kcsl,@kcje)
return
end
rollback transaction
5 数据库恢复与备份
(1)数据库的完全备份
backup database db_shopping
to disk='E:\备份数据库\fullback_shop'
with init
(2)数据库的恢复
restore database db_shopping
from disk='E:\备份数据库\fullback_shop'
with replace
(3)数据库差异备份
backup database db_shopping
to disk='E:\备份数据库\defback_shop'
with differential
(4)数据库的恢复
restore database db_shopping
from disk='E:\备份数据库\defback_shop'
with replace
其中专业理论知识内容包括:保安理论知识、消防业务知识、职业道德、法律常识、保安礼仪、救护知识。作技能训练内容包括:岗位操作指引、勤务技能、消防技能、军事技能。
二.培训的及要求培训目的
安全生产目标责任书
为了进一步落实安全生产责任制,做到“责、权、利”相结合,根据我公司2015年度安全生产目标的内容,现与财务部签订如下安全生产目标:
一、目标值:
1、全年人身死亡事故为零,重伤事故为零,轻伤人数为零。
2、现金安全保管,不发生盗窃事故。
3、每月足额提取安全生产费用,保障安全生产投入资金的到位。
4、安全培训合格率为100%。
二、本单位安全工作上必须做到以下内容:
1、对本单位的安全生产负直接领导责任,必须模范遵守公司的各项安全管理制度,不发布与公司安全管理制度相抵触的指令,严格履行本人的安全职责,确保安全责任制在本单位全面落实,并全力支持安全工作。
2、保证公司各项安全管理制度和管理办法在本单位内全面实施,并自觉接受公司安全部门的监督和管理。
3、在确保安全的前提下组织生产,始终把安全工作放在首位,当“安全与交货期、质量”发生矛盾时,坚持安全第一的原则。
4、参加生产碰头会时,首先汇报本单位的安全生产情况和安全问题落实情况;在安排本单位生产任务时,必须安排安全工作内容,并写入记录。
5、在公司及政府的安全检查中杜绝各类违章现象。
6、组织本部门积极参加安全检查,做到有检查、有整改,记录全。
7、以身作则,不违章指挥、不违章操作。对发现的各类违章现象负有查禁的责任,同时要予以查处。
8、虚心接受员工提出的问题,杜绝不接受或盲目指挥;
9、发生事故,应立即报告主管领导,按照“四不放过”的原则召开事故分析会,提出整改措施和对责任者的处理意见,并填写事故登记表,严禁隐瞒不报或降低对责任者的处罚标准。
10、必须按规定对单位员工进行培训和新员工上岗教育;
11、严格执行公司安全生产十六项禁令,保证本单位所有人员不违章作业。
三、 安全奖惩:
1、对于全年实现安全目标的按照公司生产现场管理规定和工作说明书进行考核奖励;对于未实现安全目标的按照公司规定进行处罚。
2、每月接受主管领导指派人员对安全生产责任状的落
展开阅读全文