基于Java的连锁药店门店管理系统
区域:南京(浦口/玄武/栖霞)
门店 编号 所属 区域 地址
基础资料,采购管理,库存管理,销售管理,系统管理。
权限:管理员,销售员,采购员,仓库管理员
用户信息
管理员
用户
三次登录异常警告
基础信息
员工信息
供应商信息
药品信息
采购模块
供应商管理
建立采购单
采购 报损
库存模块
采购单 入库检查
库存明细查看
库存报警 少于10个报警
库存过期提示
过期报损
销售模块
客户管理
销售单建立
销售下单
销售退货
统计分析
按一段时间分别统计采购量,销售量,报损量
销售单退货:入库检查 退货备注破损还是完好(退货及入库)
统计时间段内 总的采购量和门店分配
统计时间段内 各个门店销售数量 和 各个门店销售金额) (门店售价*数量) 利润 总销售量 总利润
统计时间段内 各个门店报损量 总报损量
管理员 账号 密码
用户 账号 密码 用户类型()
员工信息 姓名 性别 身份证号 电话 邮箱 住址
药品类别 类别编码 类别名称 (生鲜,服饰,家电,洗化用品,图书)
药品 药品编码 类别编码 药品名称 生产日期 保质期月 单位 进价
药品到期提醒 保质期到期前 1个月内 提醒
库存不足提醒,药品少于10 提醒
供应商 供应商名称 联系人 联系地址 联系电话
连锁药店门店公告:库存不足的药品在页面头部滚动显示
采购管理
采购员进行采购,填写采购单。 |
1 供应商表 |
包括字段:
供应商名称 联系人 联系地址 联系电话 |
2 药品信息表 |
包括字段:
药品种类编码 种类名称 药品编码 药品名称 型号 (生产日期 截止日期) 单位 进价
|
3 采购单表 |
包括字段:
日期 单号 供应商药品编码 药品名称 型号 单位 (生产日期 截止日期) 数量 进价 总额
|
采购需要药品信息,供应商信息
根据采购单入库门店仓库
|
库存管理
库存管理员按照采购单进行入库操作,并填写入库单,按照销售单进行出库操作,并填写 |
1 药品信息表 |
包括字段:
药品种类编码 种类名称 药品编码 药品名称 型号
(生产日期 截止日期) 单位 进价
|
2 入库单表 |
包括字段:
日期 药品编码 药品名称供应商 型号 单位
生产日期 截止日期 数量 门店
|
3 调库单表 |
包括字段:
日期 药品编码 药品名称供应商 型号 单位
生产日期 截止日期 数量 门店 |
4 出库单表 |
包括字段:
日期 药品编码 药品名称供应商 型号 单位
生产日期 截止日期 数量 门店 |
5损失记录 |
包括字段:
药品编码 药品名称 型号 (生产日期 截止日期) 单位 数量 进价 门店 备注
|
入库时需要门店库房信息,药品信息(要用采购单来控制)各个门店库存更新
损失记录中数量最终=进货数量—销售数量
损失记录的备注会注明损坏或是过期
库存管理有过期提醒,药品过期,变红提醒
库存管理有库存不足提醒,库存数<10,提醒进货或者调货
可计算一段时间内的损失总额
|
销售管理
销售员进行销售,填写销售单。 |
1 客户表 |
包括字段:
客户名 联系人 联系地址 联系电话 |
2 库存表 |
包括字段:
药品编码 药品名称 供应商 型号 单位
生产日期 截止日期 数量 门店编号
|
3 销售单表 |
包括字段:
日期 单号 客户 药品编码 药品名称 型号 单位 数量 售价 门店编号 总额
|
4 退货管理 |
|
销售需要客户信息和库存信息
|
系统管理
系统按不同角色登录,可以分操作员管理,密码修改(二次验证),权限管理,退出系统 |
1 管理员 |
包括字段:
真实姓名 用户名 登录密码 权限(添加系统用户,编号,用户名,密码和职位,删除用户,查看用户列表)
权限最大 |
2 采购员 |
包括字段:
真实姓名 密码 权限(修改药品信息、供应商信息、录入采购单,打印采购单) |
3库存管理员 |
包括字段:
真实姓名 密码 权限(录入库存单,做损失记录,修改库存信息)
|
4 销售员 |
包括字段:
真实姓名 密码 权限(录入销售单,打印销售单,修改客户信息,客户退货管理)
|
管理员可以给其他用户分权限,控制用户注册信息(账号重复提示) |
表数量27
采购单 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
ID |
integer |
是 |
|
|
单号 |
nvarchar(50) |
|
是 |
|
供应商名称 |
nvarchar(50) |
|
是 |
|
药品编码 |
nvarchar(50) |
|
|
|
数量 |
integer |
|
|
|
状态 |
nvarchar(50) |
|
|
N'新建' |
损失数量 |
integer |
|
是 |
0 |
损失备注 |
nvarchar(500) |
|
是 |
|
操作时间 |
datetime |
|
是 |
getdate() |
门店编码 |
nvarchar(50) |
|
是 |
|
类型 |
nvarchar(50) |
|
|
N'采购单' |
操作者 |
nvarchar(50) |
|
是 |
| 表:1
采购单类型 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
类型 |
nvarchar(50) |
|
|
| 表:2
采购单状态 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
状态 |
nvarchar(50) |
|
|
| 表:3
供应商 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
ID |
integer |
是 |
|
|
供应商名称 |
nvarchar(50) |
|
|
|
联系人 |
nvarchar(50) |
|
是 |
|
联系地址 |
nvarchar(500) |
|
是 |
|
联系电话 |
nvarchar(50) |
|
是 |
| 表:4
管理员 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
ID |
integer |
是 |
|
|
账号 |
nvarchar(50) |
|
|
|
密码 |
nvarchar(50) |
|
|
| 表:5
客户 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
ID |
integer |
是 |
|
|
客户名称 |
nvarchar(50) |
|
|
|
联系人 |
nvarchar(50) |
|
|
|
联系地址 |
nvarchar(500) |
|
是 |
|
联系电话 |
nvarchar(50) |
|
|
| 表:6
门店 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
ID |
integer |
是 |
|
|
门店编码 |
nvarchar(50) |
|
|
|
区域 |
nvarchar(50) |
|
是 |
|
联系人 |
nvarchar(50) |
|
是 |
|
联系电话 |
nvarchar(50) |
|
是 |
|
地址 |
nvarchar(100) |
|
是 |
| 表:7
区域 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
ID |
integer |
是 |
|
|
区域 |
nvarchar(50) |
|
|
| 表:8
销售单 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
ID |
integer |
是 |
|
|
单号 |
nvarchar(50) |
|
是 |
|
客户名称 |
nvarchar(50) |
|
是 |
|
药品编码 |
nvarchar(50) |
|
|
|
数量 |
integer |
|
|
|
状态 |
nvarchar(50) |
|
|
N'新建' |
退货数量 |
integer |
|
是 |
0 |
退货备注 |
nvarchar(500) |
|
是 |
|
操作时间 |
datetime |
|
|
getdate() |
门店编码 |
nvarchar(50) |
|
是 |
|
类型 |
nvarchar(50) |
|
是 |
N'销售单' |
操作者 |
nvarchar(50) |
|
是 |
| 表:9
销售单类型 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
类型 |
nvarchar(50) |
|
|
| 表:10
销售单状态 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
状态 |
nvarchar(50) |
|
|
| 表:11
药品 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
ID |
integer |
是 |
|
|
药品编码 |
nvarchar(50) |
|
|
|
类别编码 |
nvarchar(50) |
|
|
|
药品名称 |
nvarchar(50) |
|
|
|
批次 |
nvarchar(50) |
|
|
|
生产日期 |
datetime |
|
|
|
保质期月 |
integer |
|
|
|
单位 |
nvarchar(50) |
|
|
|
进价 |
float |
|
|
|
售价 |
float |
|
是 |
| 表:12
药品类别 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
ID |
integer |
是 |
|
|
类别编码 |
nvarchar(50) |
|
|
|
类别名称 |
nvarchar(50) |
|
|
| 表:13
用户 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
ID |
integer |
是 |
|
|
账号 |
nvarchar(50) |
|
|
|
密码 |
nvarchar(50) |
|
|
|
用户类型 |
nvarchar(50) |
|
|
|
门店编码 |
nvarchar(50) |
|
是 |
| 表:14
用户类型 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
用户类型 |
nvarchar(50) |
|
|
| 表:15
v采购单 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
单号 |
nvarchar(50) |
|
是 |
|
供应商名称 |
nvarchar(50) |
|
是 |
|
状态 |
nvarchar(50) |
|
|
|
类型 |
nvarchar(50) |
|
|
|
门店编码 |
nvarchar(50) |
|
是 |
|
操作时间 |
datetime |
|
是 |
|
总计 |
float |
|
是 |
| 表:16
v采购单明细 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
ID |
integer |
是 |
|
|
单号 |
nvarchar(50) |
|
是 |
|
供应商名称 |
nvarchar(50) |
|
是 |
|
药品编码 |
nvarchar(50) |
|
|
|
数量 |
integer |
|
|
|
状态 |
nvarchar(50) |
|
|
|
损失数量 |
integer |
|
是 |
|
损失备注 |
nvarchar(500) |
|
是 |
|
操作时间 |
datetime |
|
是 |
|
门店编码 |
nvarchar(50) |
|
是 |
|
类型 |
nvarchar(50) |
|
|
|
类别编码 |
nvarchar(50) |
|
是 |
|
药品名称 |
nvarchar(50) |
|
是 |
|
批次 |
nvarchar(50) |
|
是 |
|
生产日期 |
datetime |
|
是 |
|
保质期月 |
integer |
|
是 |
|
单位 |
nvarchar(50) |
|
是 |
|
进价 |
float |
|
是 |
|
类别名称 |
nvarchar(50) |
|
是 |
|
合计 |
float |
|
是 |
|
操作者 |
nvarchar(50) |
|
是 |
| 表:17
v门店库存余量 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
ID |
integer |
是 |
|
|
药品编码 |
nvarchar(50) |
|
|
|
类别编码 |
nvarchar(50) |
|
|
|
药品名称 |
nvarchar(50) |
|
|
|
批次 |
nvarchar(50) |
|
|
|
生产日期 |
datetime |
|
|
|
保质期月 |
integer |
|
|
|
单位 |
nvarchar(50) |
|
|
|
进价 |
float |
|
|
|
类别名称 |
nvarchar(50) |
|
是 |
|
库存余量 |
integer |
|
是 |
|
门店编码 |
nvarchar(50) |
|
是 |
|
售价 |
float |
|
是 |
| 表:18
v门店入库数量 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
药品编码 |
nvarchar(50) |
|
|
|
入库总数 |
integer |
|
是 |
|
报损总量 |
integer |
|
是 |
|
入库数 |
integer |
|
是 |
|
门店编码 |
nvarchar(50) |
|
是 |
| 表:19
v门店销售数量 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
药品编码 |
nvarchar(50) |
|
|
|
销售总数 |
integer |
|
是 |
|
退货总量 |
integer |
|
是 |
|
销售数 |
integer |
|
是 |
|
门店编码 |
nvarchar(50) |
|
是 |
| 表:20
v入库数量 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
药品编码 |
nvarchar(50) |
|
|
|
入库总数 |
integer |
|
是 |
|
报损总量 |
integer |
|
是 |
|
入库数 |
integer |
|
是 |
| 表:21
v销售单 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
单号 |
nvarchar(50) |
|
是 |
|
客户名称 |
nvarchar(50) |
|
是 |
|
状态 |
nvarchar(50) |
|
|
|
类型 |
nvarchar(50) |
|
是 |
|
操作时间 |
datetime |
|
|
|
总计 |
float |
|
是 |
| 表:22
v销售单门店 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
单号 |
nvarchar(50) |
|
是 |
|
客户名称 |
nvarchar(50) |
|
是 |
|
状态 |
nvarchar(50) |
|
|
|
类型 |
nvarchar(50) |
|
是 |
|
操作时间 |
datetime |
|
|
|
总计 |
float |
|
是 |
|
门店编码 |
nvarchar(50) |
|
是 |
| 表:23
v销售单明细 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
ID |
integer |
是 |
|
|
单号 |
nvarchar(50) |
|
是 |
|
客户名称 |
nvarchar(50) |
|
是 |
|
药品编码 |
nvarchar(50) |
|
|
|
数量 |
integer |
|
|
|
状态 |
nvarchar(50) |
|
|
|
退货数量 |
integer |
|
是 |
|
退货备注 |
nvarchar(500) |
|
是 |
|
操作时间 |
datetime |
|
|
|
门店编码 |
nvarchar(50) |
|
是 |
|
类型 |
nvarchar(50) |
|
是 |
|
类别编码 |
nvarchar(50) |
|
是 |
|
药品名称 |
nvarchar(50) |
|
是 |
|
批次 |
nvarchar(50) |
|
是 |
|
生产日期 |
datetime |
|
是 |
|
保质期月 |
integer |
|
是 |
|
单位 |
nvarchar(50) |
|
是 |
|
进价 |
float |
|
是 |
|
类别名称 |
nvarchar(50) |
|
是 |
|
合计 |
float |
|
是 |
|
操作者 |
nvarchar(50) |
|
是 |
|
售价 |
float |
|
是 |
| 表:24
v销售数量 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
药品编码 |
nvarchar(50) |
|
|
|
销售总数 |
integer |
|
是 |
|
退货总量 |
integer |
|
是 |
|
销售数 |
integer |
|
是 |
| 表:25
v药品 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
ID |
integer |
是 |
|
|
药品编码 |
nvarchar(50) |
|
|
|
类别编码 |
nvarchar(50) |
|
|
|
药品名称 |
nvarchar(50) |
|
|
|
批次 |
nvarchar(50) |
|
|
|
生产日期 |
datetime |
|
|
|
保质期月 |
integer |
|
|
|
单位 |
nvarchar(50) |
|
|
|
进价 |
float |
|
|
|
售价 |
float |
|
是 |
|
类别名称 |
nvarchar(50) |
|
是 |
| 表:26
v药品库存 |
|
字段名称 |
数据类型 |
自增主键 |
允许为空 |
默认值 |
ID |
integer |
是 |
|
|
药品编码 |
nvarchar(50) |
|
|
|
类别编码 |
nvarchar(50) |
|
|
|
药品名称 |
nvarchar(50) |
|
|
|
批次 |
nvarchar(50) |
|
|
|
生产日期 |
datetime |
|
|
|
保质期月 |
integer |
|
|
|
单位 |
nvarchar(50) |
|
|
|
进价 |
float |
|
|
|
类别名称 |
nvarchar(50) |
|
是 |
|
库存余量 |
integer |
|
是 |
| 表:27
|