一、目标
设计一个数据库使FoodStore公司(定位为一家中小型企业)能流畅运作,保证各个部门间信息获取正常,人员分配合理,食品种类齐全等。
二、分析
1、先根据该公司的运营流程建立下列模型
2、从中发现产生联系的基本元素有:员工、顾客、食品等,经过抽象得到以下分类
人:员工(中层级以上、普通职工)、消费者
物:食品、钱、租界房屋、资源(水 电 煤等)
事:活动(打折,促消等)、客服、订货、收货、验货、退换货等
3、所有元素都是围绕时间和空间这对逻辑关系展开的。
三、设计
根据供货、销售、人事、客服、促销、后勤等不同功能模块进行设计
供货 |
定货单 |
食品ID int |
厂商 nvarchar |
类别 nvarchar |
名称 nvarchar |
定购数量 int |
定购时间 smalldatetime |
|
定购人 nvarchar |
定货单价格 smallmoney |
定货总价 money |
联系电话 int |
|
|
|
收货单 |
食品ID int |
厂商 nvarchar |
类别 nvarchar |
名称 nvarchar |
实际收到数量 int |
应到数量 |
|
|
收货时间 smalldatetime |
定货单价格 smallmoney |
定货总价money |
是否结算 bool |
收货人 nvarchar |
联系电话 int |
|
发货单 |
食品ID int |
厂商 nvarchar |
类别 nvarchar |
名称 nvarchar |
数量 int |
上架号 int |
|
|
销售单价 smallmoney |
|
|
|
|
|
|
补货单 |
食品ID int |
厂商 nvarchar |
类别 nvarchar |
名称 nvarchar |
补货数量 int |
上次补货时间 smalldatetime |
|
|
本次补货时间 smalldatetime |
销售单价 smallmoney |
领货人 |
|
|
|
|
食物清单 |
食品ID int |
厂商 nvarchar |
类别 nvarchar |
名称 nvarchar |
条形码 int |
库存数量 int |
|
|
生产日期 smalldatetime |
保质期 int |
过期时间 smalldatetime |
是否缺货 bool |
|
|
|
销售 |
食品情况表 |
食品ID int |
厂商 nvarchar |
类别 nvarchar |
名称 nvarchar |
条形码 int |
上架号 int |
|
应上架数量 int |
实际上架数量 int |
是否补货 bool |
|
|
|
|
提货单 |
食品ID int |
厂商 nvarchar |
类别 nvarchar |
名称 nvarchar |
提货数量 int |
销售单价 smallmoney |
|
|
条形码 int |
|
|
|
|
|
|
降价表 |
食品ID int |
厂商 nvarchar |
类别 nvarchar |
名称 nvarchar |
原始价格 smallmoney |
折后单价 smallmoney |
|
|
降价理由 nvarchar |
降价时间 int |
条形码 int |
|
|
|
|
销售情况表 |
食品ID int |
厂商 nvarchar |
类别 nvarchar |
名称 nvarchar |
上架数量 int |
购买数量 int |
|
|
是否降价 bool |
补货频率 float |
|
|
|
|
|
人事 |
员工信息表 |
员工ID int |
姓名 nvarchar |
性别 char |
年龄 tinyint |
部门 nvarchar |
职务 nvarchar |
|
政治身份 |
家庭地址 |
家庭电话 int |
手机 int |
|
|
|
考勤表 |
员工ID int |
姓名 nvarchar |
部门 nvarchar |
到岗时间 datetime |
离岗时间 datetime |
工作日时间 int |
|
|
加班日时间 |
|
|
|
|
|
|
工资表 |
员工ID int |
姓名 nvarchar |
部门 nvarchar |
工作日时间 int |
加班日时间 |
工资 smallmoney |
|
|
其他费用支出 smallmoney |
实发工资 smallmoney |
|
|
|
|
|
客服 |
投诉情况表 |
投诉ID int |
投诉人 nvarchar |
投诉对象 nvarchar |
投诉时间 smalldatetime |
投诉内容 nvarchar |
处理意见 nvarchar |
|
接待人 nvarchar |
|
|
|
|
|
|
退换情况表 |
食品ID int |
厂商 nvarchar |
类别 nvarchar |
名称 nvarchar |
退换数量 int |
销售单价 smallmoney |
|
|
退换理由 nvarchar |
负责人 nvarchar |
|
|
|
|
|
促消 |
活动情况表 |
活动ID int |
活动名称 nvarchar |
活动内容 nvarchar |
活动地点 nvarchar |
活动开始时间 smalldatetime |
活动结束时间 smalldatetime |
|
天数 int |
负责人 nvarchar |
活动经费 |
|
|
|
|
后勤 |
后勤表 |
项目ID int |
项目内容 nvarchar |
本月支出 |
负责人 nvarchar |
|
|
汇总 |
财务总表 |
货源支出 money |
营业额 money |
工资发放 money |
客服支出 money |
后勤支出 money |
其他 money |
|
总盈利 money |
|
|
|
|
|
四、总结
该数据库设计基本能满足中小型企业的需求,但其中部分功能模块的报表由于作者经验等各方面的不足未能完善。相信在今后通过工作能弥补上这一点遗憾!
撰写人:杜少卿
时间:2008-10-27
Leave a Reply