商品进销存项目设计方案.docx
《商品进销存项目设计方案.docx》由会员分享,可在线阅读,更多相关《商品进销存项目设计方案.docx(21页珍藏版)》请在冰豆网上搜索。
商品进销存项目设计方案
进销存项目系统设计说明书
班级:
信息1021
组名:
风雨同路
组员姓名:
陈晴、冯研、万方圆
王军、岳磊、李晓龙
日期:
2010年10月25日
目录
一:
设计的目标3
二:
开发及运行的环境4
三:
系统功能结构(系统模块图)5
1该系统的部分模块图(总的包括部分重要的):
5
(1)总的系统图5
(2)基本档案6
(3)进货管理7
(4)销售管理8
2、下面是各模块的具体信息:
9
基本档案:
9
进货管理:
9
销售管理9
库存管理:
10
报表设计:
10
系统维护:
12
四:
数据库设计13
1:
进销存系统的ER图(总)13
2:
进销存系统实体的属性ER分图如下:
13
(1):
商品实体属性图13
(2):
供应商实体属性图14
(3)客户实体属性图14
(4):
员工实体属性图:
15
(4):
部门实体属性图15
3:
进销存系统中的各个表的信息如下:
16
(2):
客户信息表(如下)16
(3)供应商信息表17
(4)商品信息表18
(5)商品销售信息表18
(6):
商品退货信息表19
4.存储过程与触发器设计22
四:
项目文件结构设计24
下面是我们的主要设计图:
24
五:
用户权限的设计24
一:
设计的目标
本系统要对进销存进行管理,进行商品数据,员工信息以及会员信息的录入,采用用户名,密码安全机制,分用户权限登陆访问,保证系统资源不受人为因素的干扰.主要目标如下:
1.采用安全,高效的系统架构,手工操作管理变为计算机信息化处理.
2.操作简单方便,界面简洁美观.
3.具有易用性,系统的管理方式比原来的管理方式更简单,快捷.
4.系统操作准确保密,
5.管理人员可随时查询进销存的实时信息.
二:
开发及运行的环境
硬件配置:
服务器
Cpu:
AMDAthlon(速龙)II双核M340
内存:
2G
主硬盘:
希捷ST9320325AS(320GB/5400转/分)
显示器:
友达AU0163C(14英寸)
显卡:
ATIMobilityRadeonHD4300/4500Series(512MB)
光驱:
建兴DVDADS8A4SDVD刻录机
网卡:
钰硕AR8132PCI-EFastEthernetController
客户机:
普通的pc机
软件配置:
服务器操作系统平台:
WindowsXP
程序设计工具:
VisulaStudio2005
数据库系统:
SQLServer2000
三:
系统功能结构(系统模块图)
1.该系统的部分模块图(总的包括部分重要的):
(1)总的系统图
(2)基本档案
(3)进货管理
(4)销售管理
2.下面是各模块的具体信息:
A:
基本档案:
(1)员工信息:
员工工号、员工姓名、员工登录名、员工性别、员工出生日期、所属部门、担任职位、入职日期、家庭电话、手机号码、家庭住址、学历、备注。
(2)客户档案:
客户编号、客户姓名、客户性别、客户年龄、客户出生日期、电话(办/宅)、家庭住址、手机号码、备注。
(3)供应商信息:
:
供应商编号、供应商名称、供应商主管、供应商电话、供应商传真、供应商Email、供应商地址、备注。
B:
进货管理:
(1)采购进货:
供方名称、采购单号、采购日期、采购员工编号、采购数量、进货价格、应付金额、实付金额、备注。
(2)采购退货:
退货单号、退货日期、供方名称、退货员工编号、退货数量、进货价格、实收金额、应付金额、退货原因、备注。
(3)采购查询:
员工编号(进货和退货)、商品编号、商品名称、商品数量、进货价格、销售价格、应付金额、实付金额、备注。
C:
销售管理
(1)商品销售:
基本信息:
销售编号、库存编号、商品编号、员工编号、商品名称、商品数量、商品规格、销售日期、商品单位、商品销售价格、应付金额、已付金额、备注、
(2)客户退货:
退货编号、仓库编号、商品编号、客户编号、员工编号、退货商品名称、退货商品数量、退货商品价格、应付价格、已付价格、退货原因、退货种类、备注。
(3)销售查询:
销售编号、退货编号、商品名称、仓库编号、进货价格、销售价格、销售数量、应收金额、实收金额。
D:
库存管理:
(1)库存调拨
调拨编号、调拨部门、调拨人员、调出仓库、调入仓库、调拨数量、调拨日期、库存数量、备注。
(2)库存报警
商品编号、商品名称、进货价格、销售价格、退货数量、报警级别、报警时间、备注。
(3)库存查询
商品编号、商品名称、进货价格、销售价格、退货数量、报警级别、库存数量、备注。
E:
报表设计:
(1)员工信息报表
员工工号、员工姓名、员工性别、员工年龄、员工民族、所属部门、身份证号、入职日期、家庭电话、家庭住址、手机号码。
(2)往来单位报表
客户姓名、客户性别、客户年龄、客户出生日期、籍贯、电话(办/宅)、家庭住址、手机号码、备注。
(3)进货商品报表
供方名称、采购单号、采购日期、采购员工、编号、名称、类别、颜色、数量、进货价格、销售价格、应付金额、实付金额、备注、制单人、财务审核、仓管员。
(4)员工销售报表
销售日期、商品名称、销售数量、单价、销售额、销售员、
计划销售额、实际销售额、完成比例。
(5)商品进货分析报表
供应商编号、供应商名称、进货价格、进货数量、商品名称、商品编号。
(6)销售价格分析报表
商品名称、商品的编号、销售价格、销售数量、销售人员、销售日期。
(7)员工销售分析报表
员工编号、商品名称、商品编号、销售数量、销售总金额。
F:
系统维护:
(1)系统用户
登录身份(普通用户/管理员)、用户姓名、用户密码。
(2)权限设置
基本档案、进货管理、销售管理、库存管理、系统维护。
(3)更改密码
原始密码、修改密码、密码验证
(4)数据备份
备份名称、备份位置
(5)数据恢复
备份位置
四:
数据库设计
1:
进销存系统的ER图(总)
2:
进销存系统实体的属性ER分图如下:
(1):
商品实体属性图
(2):
供应商实体属性图
(3):
客户实体属性图
(4):
员工实体属性图:
(5):
部门实体属性图
3:
进销存系统中的各个表的信息如下:
(1)员工信息表
员工信息:
员工工号、员工姓名、员工登录名、员工性别、员工出生日期、所属部门、担任职位、入职日期、家庭电话、手机号码、家庭住址、学历、备注。
列名
数据类型
允许空(Y/N)
userid
nvarchar(50)
N
name
nvarchar(20)
Y
sysloginname
nvarchar(20)
Y
sex
nvarchar(20)
Y
birthday
datatime
Y
department
nvarchar(20)
Y
postname
nvarchar(50)
Y
startworktime
datatime
Y
phoneH
nvarchar(20)
Y
phoneM
nvarchar(20)
Y
address
nvarchar(20)
Y
educationbg
nvarchar(20)
Y
remark
nvarchar(200)
Y
popedomid
nvarchar(50)
Y
(2):
客户信息表(如下)
客户档案:
客户编号、客户姓名、客户性别、客户出生日期、电话(办/宅)、家庭住址、手机号码、备注。
列名
数据类型
允许空(Y/N)
customerid
int
N
name
nvarchar(20)
Y
sex
nvarchar(4)
Y
birthday
datatime
Y
phoneH
nvarchar(20)
Y
phoneM
nvarchar(20)
Y
address
nvarchar(200)
Y
remark
nvarchar(200)
Y
(3):
供应商信息表
供应商信息:
供应商编号、供应商名称、供应商主管、供应商电话、供应商传真、供应商Email、供应商地址、备注。
列名
数据类型
允许空(Y/N)
companyid
nvarchar(50)
N
companyname
nvarchar(100)
Y
companydirector
nvarchar(20)
Y
companyphone
nvarchar(20)
Y
companyfax
nvarchar(20)
Y
companyemail
nvarchar(20)
Y
companyaddress
nvarchar(200)
Y
companyremark
nvarchar(400)
Y
(4):
商品信息表
基本信息:
商品编号、采购员工编号、供方名称、仓库名称、商品名称、商品数量、商品规格、商品单位、购进时间、进货价格、销售价格、应付金额、实付金额、备注。
列名
数据类型
允许空(Y/N)
goodsid
nvarchar(20)
N
userid
nvarchar(50)
Y
companyname
nvarchar(100)
Y
depotname
nvarchar(100)
Y
goodsname
nvarchar(50)
Y
goodsnum
int
Y
goodsspec
nvarchar(20)
Y
goodsunit
nvarchar(20)
Y
goodstime
datatime
Y
goodsprice
money
Y
sellprice
money
Y
needprice
money
Y
haspay
money
Y
remark
nvarchar(200)
Y
(5):
商品销售信息表
基本信息:
销售编号、库存编号、商品编号、员工编号、商品名称、商品数量、商品规格、销售日期、商品价格、商品单位、商品销售价格、应付金额、已付金额、备注、
列名
数据类型
允许空(Y/N)
sellid
nvarchar(20)
N
stockid
nvarchar(50)
Y
goodsid
nvarchar(20)
Y
userid
nvarchar(50)
Y
goodsname
nvarchar(50)
Y
goodsnum
int
Y
goodsspec
nvarchar(20)
Y
selltime
datatime
Y
goodsprice
money
Y
goodsunit
nvarchar(20)
Y
sellprice
money
Y
needprice
money
Y
haspay
money
Y
remark
nvarchar(200)
Y
(6):
商品退货信息表
退货编号、仓库编号、商品编号、客户编号、员工编号、供应商名称、仓库名称、退货商品名称、退货商品时间、退货商品规格、退货商品数量、退货商品单位、退货商品价格、应付价格、已付价格、退货原因、退货种类、备注。
列名
数据类型
允许空(Y/N)
regoodsid
nvarchar(20)
N
stockid
nvarchar(50)
Y
goodid
nvarchar(50)
Y
userid
nvarchar(50)
Y
customerid
nvarchar(50)
Y
companyname
nvarchar(20)
depotname
nvarchar(20)
Y
regoodsname
nvarchar(20)
Y
regoodsspec
nvarchar(20)
Y
regoodstime
datatime
Y
regoodsnum
int
Y
regoodsunit
nvarchar(20)
Y
regoodsprice
money
Y
needpay
money
Y
haspay
money
Y
regoodsreason
nvarchar(400)
Y
regoodsresult
nvarchar(400)
Y
regoodssort
nvarchar(50)
Y
remark
nvarchar(200)
Y
(7):
商品库存信息表(加仓库类别表)
仓库类别表
列名
数据类型
允许空(Y/N)
depotid
nvarchar(50)
N
depotname
nvarchar(20)
Y
商品库存信息表
仓库编号、商品编号、供应商名称、仓库名称、商品名称、库存数量、报警数量、商品单位、购进时间、商品规格、商品价格、应付价格、已付价格、备注。
列名
数据类型
允许空(Y/N)
stockid
nvarchar(50)
N
goodsid
nvarchar(20)
Y
companyname
nvarchar(100)
Y
stocknum
int
alarmnum
int
depotname
nvarchar(20)
Y
goodsname
nvarchar(20)
Y
goodsunit
nvarchar(20)
Y
goodstime
dateime
Y
goodsspec
nvarchar(20)
Y
goodsprice
money
Y
sellprice
money
Y
needpay
money
Y
haspay
money
Y
remark
nvarchar(200)
Y
4:
存储过程与触发器设计
三个主要的触发器的设计:
(1):
商品进货信息的改变引起库存的改变,
触发器名为:
t_goods
代码:
createtriggertt_goodsont_goods
forinsert
asinsertintot_stock(goodsid,companyname,depotname,goodsname,stocknum,goodsunit,
goodstime,goodsspec,goodsprice,sellprice,needpay,haspay,remark)
selectInserted.goodsid,panyname,inserted.depotname,inserted.goodsname,inserted.goodsnum,inserted.goodsunit,
inserted.goodstime,inserted.goodsspec,inserted.goodsprice,inserted.sellprice,inserted.needpay,inserted.haspay,inserted.remarkfrominserted
(2)商品退货信息的改变引起库存的改变,
触发器名为:
t_regoods
代码:
createtriggertt_regoodsont_regoods
Forinsert,update
as
if((selectinserted.regoodssortfrominserted)=1)
begin
updatet_stocksetstocknum=(selectt_stock.stocknum+inserted.regoodsnumfrominserted)
wheret_stock.goodsid=(selectinserted.goodsidfrominserted)andt_stock.stockid=(selectinserted.stockidfrominserted)
end
if((selectinserted.regoodssortfrominserted)=0)
begin
updatet_stocksetstocknum=(selectt_stock.stocknum-inserted.regoodsnumfrominserted)
wheret_stock.goodsid=(selectinserted.goodsidfrominserted)andt_stock.stockid=(selectinserted.stockidfrominserted)
end
(3)商品销售信息的改变引起库存的改变,
触发器名为:
t_Sell
代码:
createtriggertt_sellont_sell
forinsert,update
as
updatet_stocksetstocknum=(selectt_stock.stocknum-inserted.goodsnumfrominserted)
wheret_stock.stockid=(selectinserted.stockidfrominserted)
五:
项目文件结构设计
下面是我们的主要设计图:
六:
用户权限的设计
(1):
我的用户权限设计应包含以下的内容
1.用户的权限通过角色来控制,一个用户可以拥有多个角色.
2.用户拥有不同角色时,其权限应该是多个角色相互的补集.
3.一个角色拥有多个模块
4.用户的前台菜单显示根据角色所拥有的模块所决定,不同的用户在前端显示的操作菜单是不一样的。
5.页面中的功能按钮根据模块中所包含的功能所定义,通过模块及角色所拥有的权限进行控制
6.可看某个模块有哪些用户,哪些对应角色,并对其进行特殊权限设置.
7.可以针对单个用户进行特殊设置