资源描述
(3)系统结构系统总体结构小型超市零售管理系统前台POS销售系统后台管理系统商品录入收银业务进货管理销售管理库存管理人员管理模块子系统结构商品录入快速商品录入支持条形码扫描功能描述:商品录入子系统要求能快速录入商品,因此必须支持条形码扫描。收银业务交易总额计算打印交易清单支持会员卡打折功能描述:收银业务子系统能计算交易总额,打印交易清单,并根据会员卡打折。进货管理自动制定进货计划自动入库登记查询打印计划进货与入库记录功能描述:进货管理子系统可以根据库存自动指定进货计划,进货时自动等级,以及提供查询和打印计划进货与入库记录的功能。销售管理商品销售控制查询打印销售情况生成销售排行榜功能描述:销售管理子系统可以控制某商品是否允许销售,查询每种商品的销售情况并产生年、月、日报表,同时可以生成销售排行榜。查询库存明细记录库存状态自动告警提示库存管理自动盘点计算功能描述:库存管理子系统提供查询库存明细记录的基本功能,并根据库存的状态报警,以及自动盘点计算。人员管理基本信息登记管理员工操作权限管理提示客户销售权限管理提示功能描述:人员管理子系统提供基本信息登记管理,员工操作权限管理,客户销售权限管理的功能。2.2、流程图前台管理系统顶层DFD图第0层DFD图第1层DFD图2.3、户类型与职能(1)、员工(营业员): 通过商品条形码扫描输入商品到购买清单 操作软件计算交易总金额 操作软件输出交易清单 对会员进行会员卡扫描以便打折(2)、:超市经理 操作软件录入商品,供货商,厂商 操作软件制定进货计划 查询打印计划进货与入库记录 操作软件控制商品销售与否 查询打印销售情况 操作软件生成销售排行榜 查询库存明细记录 根据软件发出的库存告警进行入货 操作软件进行盘点计算(3)、总经理: 基本信息登记管理 员工操作权限管理 客户销售权限管理4、超市销售系统概念设计文档(1)、系统ER图允许销售允许打折商品用户姓名会员用户号用户类型nn供货购买日期消费金额会员卡号厂商厂商ID厂商名称厂商地址厂商电话供货商名称mn生产m1注册时间会员ID累计金额用户用户ID用户密码m供货金额供货日期销售日期供货商电话供货商地址供货商ID供货商销售销售ID商品ID商品名称价格促销价格消费m(2)、系统ER图说明1) 商店中的所有用户(员工)可以销售多种商品,每种商品可由不同用户(员工)销售;2) 每个顾客可以购买多种商品,不同商品可由不同顾客购买;3) 每个供货商可以供应多种不同商品,每种商品可由多个供应商供应。(3)、视图设计1) 交易视图(v_Dealing)用于查询交易情况的视图;2) 计划进货视图(v_PlanStock)用于查询进货计划的视图;3) 销售视图(v_Sale)用于查询销售明细记录的视图;4) 入库视图(v_Stock)用于查询入库情况的视图。5、逻辑设计文档(1)、系统关系模型a) 商品信息表(商品编号,商品名称,价格,条形码,促销价格,促销起日期,促销止日期,允许打折,库存数量,库存报警数量,计划进货数,允许销售,厂商编号,供货商编号)b) 用户表(用户编号,用户名称,用户密码,用户类型)c) 会员表(会员编号,会员卡号,累积消费金额,注册日期)d) 销售表(销售编号,商品编号,销售数量,销售金额,销售日期)e) 交易表(交易编号,用户名称,交易金额,会员卡号,交易日期)f) 进货入库表(入库编号,入库商品编号,入库数量,单额,总额,入库日期,计划进货日期,入库状态)g) 供货商表(供货商编号,供货商名称,供货商地址,供货商电话)h) 厂商表(厂商编号,厂商名称,厂商地址,厂商电话)(2)、系统数据库表结构数据库表索引表名中文名MerchInfo商品信息表User用户表Menber会员表Sale销售表Dealing交易表Stock进货入库表Provide供货商表Factory厂商表商品信息表(MerchInfo)字段名字段类型长度主/外键字段值约束对应中文名MerchIDint4PNot null商品编号MerchNameVarchar50Not null商品名称MerchPriceMoney4Not null价格MerchNumInt4Not null库存数量CautionNumInt4Not null库存报警数量PlanNumInt4null计划进货数BarCodeVarchar50Not null条形码SalesProPriceMoney4促销价格SalesProDateSDatetime8促销起日期SalesProDateEDatetime8促销止日期AllowAbateInt4Not null允许打折AllowSaleInt4Not null允许销售FactoryIDVarchar10FNot null厂商编号ProvideIDVarchar10FNot null供货商编号用户表(User)字段名字段类型长度主/外键字段值约束对应中文名UserIDvarchar10PNot null用户编号UserNameVarchar25Not null用户名称UserPWVarchar50Not null用户密码UserStyleInt4Not null用户类型会员表(Menber)字段名字段类型长度主/外键字段值约束对应中文名MemberIDVarchar10PNot null会员编号MemberCardVarchar20Not null会员卡号TotalCostMoney4Not null累积消费金额RegDateDatetime8Not null注册日期销售表(Sale)字段名字段类型长度主/外键字段值约束对应中文名SaleIDVarchar10PNot null销售编号MerChIDVarchar10FNot null商品编号SaleDateDatetime8Not null销售日期SaleNumInt4Not null销售数量SalePriceMoney4Not null销售单额交易表(Dealing)字段名字段类型长度主/外键字段值约束对应中文名DealingIDVarchar10PNot null交易编号DealingPriceMoney4Not null交易金额DealingDateMoney4Not null交易日期MemberIDVarchar10会员卡号UserNameVarchar10FNot null用户名称入库纪录表(Stock)字段名字段类型长度主/外键字段值约束对应中文名StockIDVarchar10PNot null入库编号MerchIDVarchar10FNot null入库商品编号MerchNumInt4Not null入库数量MerchPriceMoney4Not null单额TotalPriceMoney4Not null总额StockDateDatetime8Datetime入库日期PlanDateDatetime8Datetime计划进货日期StockStateInt4Not null入库状态供货商表(Provide)字段名字段类型长度主/外键字段值约束对应中文名ProvideIDvarchar10PNot null供货商编号ProvideNameVarchar50Not null供货商名称ProvideAddressVarchar250供货商地址ProvidePhoneVarchar25供货商电话厂商表(Provide)字段名字段类型长度主/外键字段值约束对应中文名FactoryIDvarchar10PNot null厂商编号FactoryNameVarchar50Not null厂商名称FactoryAddressVarchar250厂商地址FactoryPhoneVarchar25厂商电话6、物理设计文档/*-创建数据库-*/create database SuperMarketdbon primary(name=SuperMarketdb,filename=C:Program FilesMicrosoft SQL ServerMSSQLDataSuperMarketdb.mdf,size=100MB,maxsize=200MB,filegrowth=20MB)log on(name=SuperMarketlog,filename=C:Program FilesMicrosoft SQL ServerMSSQLDataSuperMarketdb.ldf,size=60MB,maxsize=200MB,filegrowth=20MB)go/*-创建基本表-*/use SuperMarketdbgo/*创建交易表*/CREATE TABLE Dealing (DealingID int identity(1,1) Primary key ,DealingDate datetime NOT NULL ,DealingPrice money NOT NULL ,UserName varchar(25) NULL ,MemberCard varchar(20) NULL) GO/*创建厂商表*/CREATE TABLE Factory (FactoryID varchar(10) Primary key ,FactoryName varchar(50) NOT NULL ,FactoryAddress varchar(250) NULL ,FactoryPhone varchar(50) NULL )GO/*创建会员表*/CREATE TABLE Member (MemberID varchar(10) Primary key ,MemberCard varchar(20) NOT NULL ,TotalCost money NOT NULL ,RegDate datetime NOT NULL )GO/*创建商品信息表*/CREATE TABLE MerchInfo (MerchID int identity(1,1) Primary key ,MerchName varchar(50) Unique NOT NULL ,MerchPrice money NOT NULL ,MerchNum int NOT NULL ,CautionNum int NOT NULL ,PlanNum int NOT NULL ,BarCode varchar(20) Unique NOT NULL ,SalesProPrice money NULL ,SalesProDateS datetime NULL ,SalesProDateE datetime NULL ,AllowAbate int NOT NULL ,AllowSale int NOT NULL ,FactoryID int NOT NULL ,ProvideID int NOT NULL) GO/*创建供应商表*/CREATE TABLE Provide (ProvideID varchar(10) Primary key ,ProvideName varchar(50) NOT NULL ,ProvideAddress varchar(250) NULL ,ProvidePhone varchar(25) NULL )GO/*创建销售表*/CREATE TABLE Sale (SaleID int identity(1,1) Primary key ,MerChID int NOT NULL ,SaleDate datetime NOT NULL ,SaleNum int NOT NULL,SalePrice money NOT NULL) GO/*创建入库表*/CREATE TABLE Stock (StockID int identity(1,1) Primary key ,MerchID int NOT NULL ,MerchNum int NOT NULL ,MerchPrice money NULL ,TotalPrice money NULL ,PlanDate datetime NULL ,StockDate datetime NULL,StockState int NOT NULL) GO/*创建用户表*/CREATE TABLE User (UserID varchar(10) Primary key ,UserName varchar(25) NOT NULL ,UserPW varchar(50) NOT NULL ,UserStyle int NOT NULL ,)/*-创建索引-*/*在交易表上建立一个以交易编号、交易日期为索引项的非聚集索引*/CREATE nonclustered INDEX IX_Dealing ON Dealing(DealingID, DealingDate)GO/*在商品信息表上建立一个以商品编号为索引项的非聚集索引*/CREATE nonclustered INDEX IX_MerchInfo ON MerchInfo(MerchID)GO/*在销售表上建立一个以销售编号、销售日期为索引项的非聚集索引*/CREATE nonclustered INDEX IX_Sale ON Sale(SaleID, SaleDate)GO/*在入库表上建立一个以入库编号、入库日期、商品编号为索引项的非聚集索引*/CREATE nonclustered INDEX IX_Stock ON Stock(StockID, StockDate, MerchID)GO/*-创建视图-*/*创建用于查询交易情况的视图*/CREATE VIEW v_DealingASSELECT DealingDate as 交易日期, UserName as 员工名称, MemberCard as 会员卡号, DealingPrice as 交易金额FROM Dealing GO/*创建用于查询进货计划的视图*/CREATE VIEW v_PlanStockASSELECT Stock.StockID as SID, MerchInfo.MerchName as 商品名称, MerchInfo.BarCode as 条形码, Factory.FactoryName as 厂商, Provide.ProvideName as 供货商, Stock.MerchNum as 计划进货数量, Stock.PlanDate as 计划进货日期FROM Stock,MerchInfo,Provide,FactoryWhere Stock.MerchID = MerchInfo.MerchID and Provide.ProvideID=MerchInfo.ProvideID and Factory.FactoryID=MerchInfo.FactoryID and Stock.StockState=0 GO/*创建用于查询销售明细记录的视图*/CREATE VIEW v_SaleASSELECT MerchInfo.MerchName as 商品名称, MerchInfo.BarCode as 条形码, MerchInfo.MerchPrice as 商品价格, Sale.SalePrice as 销售价格, Sale.SaleNum as 销售数量, Sale.SaleDate as 销售日期FROM Sale INNER JOIN MerchInfo ON Sale.MerChID = MerchInfo.MerchID GO/*创建用于查询入库情况的视图*/CREATE VIEW v_StockASSELECT MerchInfo.MerchName as 商品名称, MerchInfo.BarCode as 条形码, Factory.FactoryName as 厂商, Provide.ProvideName as 供货商, Stock.MerchPrice as 入库价格, Stock.MerchNum as 入库数量, Stock.TotalPrice as 入库总额, Stock.StockDate as 入库日期FROM Stock,MerchInfo,Provide,FactoryWhere Stock.MerchID = MerchInfo.MerchID and Provide.ProvideID=MerchInfo.ProvideID and Factory.FactoryID=MerchInfo.FactoryID and Stock.StockSt
展开阅读全文