基于Java+MySQL实现的医药销售管理系统

医药销售管理系统

开发环境和开发工具

操作系统:win8.1

开发环境:Mysql、Web

开发工具:Workbench、Eclipse、JDBC

功能需求分析

  • 员工有权查看、添加会员,查看、添加供应商,查询药品(输入药品编号或名称、类别等查询该药品或该类药品库存),添加药品采购记录,销售药品,处理退货,盘点仓库,查看销售、退货、入库记录,修改个人信息
  • 经理有权查看、添加、删除会员,查看、添加、删除供应商,查看、添加、删除员工,盘点仓库,查看销售、退货、入库记录,修改个人信息,无权进行销售和退货业务
  • 供应商和顾客对此系统没有使用权限 系统设计

系统设计

登录用户(用户编号,用户名,密码,类别)

员工(员工编号,员工姓名,联系电话,用户编号)

经理(经理编号,用户编号)

财政收支(收支编号,药品编号,员工编号,数量,日期,总额,类型)

供应商(供应商编号,供应商名称,联系人,联系方式,所在城市)

会员(客户编号,客户姓名,联系方式)

入库记录(入库记录编号,供应商编号,收支编号)

退货管理(退货编号,销售编号,收支编号)

销售管理(销售编号,客户编号,收支编号)

药品(药品编号,药品名称,供应商编号,生产批号,产地,所属类别,进价,单价,会员折扣,库存,包装规格,生产日期,有效期)

数据库物理结构设计

本次项目使用的引擎是InnoDB,MySQL的数据库引擎之一。InnoDB存储引擎为在主内存中缓存数据和索引而维持它自己的缓冲池。InnoDB存储它的表&索引在一个表空间中,表空间可以包含数个文件(或原始磁盘分区)。这与MyISAM表不同,比如在MyISAM表中每个表被存在分离的文件中。InnoDB 表可以是任何尺寸,即使在文件尺寸被限制为2GB的操作系统上。InnoDB默认地被包含在MySQL二进制分发中。

Windows Essentials installer使InnoDB成为Windows上MySQL的默认表。

此外还使用了数据库索引,索引是对数据库表中一列或多列的值进行排序的一种结构,使用索引可快速访问数据库表中的特定信息。各表索引如下:

会员:primary key(客户编号)

药品:primary key(药品编号),

INDEX 供应商编号_idx (供应商编号 ASC),

供应商:primary key(供应商编号)

登录用户:primary key(用户编号)

用户名 unique,

经理:primary key(经理编号),

INDEX 经理编号_idx (用户编号 ASC),

员工:primary key(员工编号),

INDEX 员工编号_idx (用户编号 ASC),

财政收支:PRIMARY KEY (收支编号),

INDEX 药品编号_idx (药品编号 ASC),

INDEX 员工编号_idx (员工编号 ASC),

入库记录:primary key(入库记录编号),

INDEX 供应商编号_idx (供应商编号 ASC),

INDEX 收支编号_idx (收支编号 ASC),

销售管理:PRIMARY KEY (销售编号),

INDEX 客户编号_idx (客户编号 ASC),

INDEX 收支编号_idx (收支编号 ASC),

退货管理:PRIMARY KEY (退货编号),

INDEX 销售编号_idx (销售编号 ASC),

INDEX 收支编号_idx (收支编号 ASC),

界面效果

登录

主页

仓库

点击新增进行药品入库

入库/销售/退货记录

员工可查看/增加客户,供应商

经理可增删员工,客户,供应商

销售药品

退货

财务统计

相关推荐
鹏说大数据18 分钟前
MySQL连接较慢原因分析及解决措施
数据库·mysql
Tiger Z20 分钟前
R 语言科研绘图 --- 密度图-汇总
开发语言·程序人生·r语言·贴图
lllsure1 小时前
【快速入门】MyBatis
java·后端·mybatis
叶雅茗1 小时前
PHP语言的区块链扩展性
开发语言·后端·golang
爱学习的学姐1 小时前
【精品源码】Java宠物领养网站+SpringBoot+VUE+前后端分离
java·spring boot·宠物
双叶8362 小时前
(C语言)写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和(递归函数)
c语言·开发语言·数据结构·算法·游戏
字节源流2 小时前
【SpringMVC】常用注解:@SessionAttributes
java·服务器·前端
Stark、2 小时前
【MySQL】多表查询(笛卡尔积现象,联合查询、内连接、左外连接、右外连接、子查询)-通过练习快速掌握法
数据库·后端·sql·mysql
贫道绝缘子3 小时前
Leetcode-132.Palindrome Partitioning II [C++][Java]
java·c++·算法·leetcode
“抚琴”的人3 小时前
C#—线程池详解
开发语言·c#