最新Java药店管理系统设计报告模板.docx
- 文档编号:27010018
- 上传时间:2023-06-25
- 格式:DOCX
- 页数:22
- 大小:289.44KB
最新Java药店管理系统设计报告模板.docx
《最新Java药店管理系统设计报告模板.docx》由会员分享,可在线阅读,更多相关《最新Java药店管理系统设计报告模板.docx(22页珍藏版)》请在冰豆网上搜索。
最新Java药店管理系统设计报告模板
精明的商家不失时机地打出“自己的饰品自己做”、“DIY(DoItYourself)饰品、真我个性”的广告,推出“自制饰品”服务,吸引了不少喜欢标新立异、走在潮流前端的年轻女孩,成为上海的时尚消费市场。
其市场现状特点具体表现为:
人民广场地铁站有一家名为“漂亮女生”的饰品店,小店新开,10平方米不到的店堂里挤满了穿着时尚的女孩子。
不几日,在北京东路、淮海东路也发现了“漂亮女生”的踪影,生意也十分火爆。
现在上海卖饰品的小店不计其数,大家都在叫生意难做,而“漂亮女生”却用自己独特的经营方式和魅力吸引了大批的女生。
此次调查以女生为主,男生只占很少比例,调查发现58%的学生月生活费基本在400元左右,其具体分布如(图1-1)
木质、石质、骨质、琉璃、藏银……一颗颗、一粒粒、一片片,都浓缩了自然之美,展现着千种风情、万种诱惑,与中国结艺的朴实形成了鲜明的对比,代表着欧洲贵族风格的饰品成了他们最大的主题。
精明的商家不失时机地打出“自己的饰品自己做”、“DIY(DoItYourself)饰品、真我个性”的广告,推出“自制饰品”服务,吸引了不少喜欢标新立异、走在潮流前端的年轻女孩,成为上海的时尚消费市场。
其市场现状特点具体表现为:
上述所示的上海经济发展的数据说明:
人们收入水平的增加,生活水平的提高,给上海的饰品业带来前所未有的发展空间,为造就了一个消费额巨大的饰品时尚市场提供了经济基础。
使大学生对DIY手工艺品的时尚性消费,新潮性消费,体验性消费成为可能。
此次调查以女生为主,男生只占很少比例,调查发现58%的学生月生活费基本在400元左右,其具体分布如(图1-1)
1.www。
cer。
net/artide/2004021313098897。
shtml。
世界上的每一个国家和民族都有自己的饰品文化,将这些饰品汇集到一起再进行新的组合,便可以无穷繁衍下去,满足每一个人不同的个性需求。
4、“体验化”消费
洛阳理工学院
课程设计报告
课程名称面向对象程序设计课程设计
设计题目药店管理系统
专业计算机科学与技术
班级
学号
姓名
完成日期2017.1.6
课程设计任务书
设计题目:
药店管理系统
设计内容与要求:
1.问题描述
设计实现药店管理系统。
能够实现药品库存管理、销售信息管理和查询功能。
2.基本要求
库存管理:
包括药品入库、出库管理,药品库存报警,药品有效期管理(过期报警)。
销售管理:
根据实际销售自动生成销售单据。
如果是会员,则药品价格按95折计算。
查询及统计功能:
对指定时间段内的出/入库进行查询/统计,对药品有效期进行查询/统计,对药品过期进行查询/统计,对指定时间段内的药品销售进行查询/统计以及利润查询/统计等。
能帮顾客查询药品信息,能按品名、生产厂家、药品类别、存货量进行查询。
指导教师:
2016年12月20日
课程设计评语
成绩:
指导教师:
年月日
目 录
第1章需求分析
1.1功能需求
药店管理系统能够实现药品库存、销售信息管理和查询功能,根据实际销售自动生成销售单据。
能帮顾客查询药品信息,能按品名、生产厂家、药品类别、存货量进行查询。
库存管理:
包括药品入库、出库管理,药品库存报警,药品有效期管理(过期报警)。
销售管理:
根据实际销售自动生成销售单据。
如果是会员,则药品价格按95折计算。
查询及统计功能:
对指定时间段内的出/入库进行查询/统计,对药品有效期进行查询/统计,对药品过期进行查询/统计,对指定时间段内的药品销售进行查询/统计以及利润查询/统计等。
能帮顾客查询药品信息,能按品名、生产厂家、药品类别、存货量进行查询。
1.2数据需求
经过对学校附近的药店的调研以及在网上查找的资料,药店药品管理系统的处理对象主要包括:
药品信息、供应商信息、顾客信息、药品销售信息、药品存储信息等几个方面。
根据市场需求需要的数据组成如下需要的数据有操作员、会员、药品、订单、厂家、进货单这些实体的组成数据有,操作人员需要包括:
账号、密码、姓名、联系电话、邮箱、地址;会员表:
账号、姓名、年龄、联系电话、邮箱、地址;药品信息中含有:
药品ID、药品名、类别、生产日期、有效期、进价、售价、生产厂家;订单详情中含有的有:
订单编号、药品名、购买数量、售价、购买人员、销售日期;厂家信息包括:
厂家编号、厂家名、电话、地址;进药表、药品ID、操作员、进药日期、进药数量
第2章数据库设计
2.1数据库逻辑级设计
E-R如下图所示
2.2关系模式
管理员(账号、密码、姓名、联系电话、邮箱、地址)
会员(账号、姓名、年龄、联系电话、邮箱、地址)
药品(药品ID、药品名称、类别、生产厂家编号)
仓库(批次ID、药品ID、药品名、类别、生产日期、有效期、进价、售价、生产厂家)
订单详情(订单编号、药品名、购买数量、售价、购买人员、销售日期、操作员姓名)
厂家(厂家编号、厂家名、电话、地址)
进药(药品ID、操作员姓名、进药日期、进药数量)
其中下划线部分为主键
2.3基本表
根据需求构建表的基本组成。
(1)管理员表如图2-1
名称
字段名称
数据类型
长度
主键
允许空值
账号
Mno
varchar
10
是
否
密码
Mpassw
varchar
20
否
否
姓名
Mname
varchar
20
否
否
电话
Mphone
char
11
否
是
邮箱
Memail
varchar
20
否
是
地址
Maddress
varchar
50
否
是
图2-1
(2)会员表如图2-2
名称
字段名称
数据类型
长度
主键
允许空值
会员号
Cno
varchar
10
是
否
姓名
Cname
varchar
20
否
否
年龄
Cage
int
否
是
电话
Cphone
char
11
否
是
邮箱
Cemail
varchar
20
否
是
地址
Caddress
varchar
50
否
是
图2-2
(3)药品表如图2-3
名称
字段名称
数据类型
长度
主键
允许空值
编号
Dno
varchar
10
是
否
品名
Dname
varchar
20
否
否
类别
Dclass
varchar
20
否
否
生产商
Sname
varchar
20
否
否
图2-3
(4)供应商表如图2-4
名称
字段名称
数据类型
长度
主键
允许空值
编号
Sno
varchar
10
是
否
供应商名
Sname
varchar
20
否
否
电话
Sphone
char
11
否
是
邮箱
Semail
varchar
20
否
是
地址
Saddress
varchar
50
否
是
图2-4
(5)库存表如图2-5
名称
字段名称
数据类型
长度
主键
允许空值
批次
Lno
varchar
10
是
否
药品ID
Dno
varchar
10
否
否
药品名
Dname
varchar
20
否
否
药品类别
Dclass
varchar
20
否
否
数量
Pquantity
int
否
否
入库时间
Idate
date
否
否
过期时间
out_date
date
否
否
进价
Dbidd
float
否
否
售价
Dprice
float
否
否
供应商
Sname
varchar
20
否
否
图2-5
(6)销售表如图2-6
名称
字段名称
数据类型
长度
主键
允许空值
订单
Slno
varchar
10
是
否
批次
Lno
varchar
10
否
否
会员ID
Cno
varchar
10
否
是
售价
Ddprice
float
否
否
数量
Mquantity
int
否
否
总价
Amoney
float
否
否
日期
Idate
date
否
否
图2-6
(7)缺货单表如图2-7
名称
字段名称
数据类型
长度
主键
允许空值
缺货单号
Lno
varchar
10
是
否
药品ID
Dno
varchar
10
否
否
数量
Pquantity
int
否
否
日期
Pdade
date
否
否
状态
Astate
varchar
10
否
否
图2-7
第3章概要设计
3.1系统结构与模块功能
本系统结构主要包括登录模块,主界面模块,添加药品名模块,修改和删除品名模块,入库模块,会员管理模块,出售管理模块,有效期查询模块,盈利查询模块,缺货查询模块。
(1)登录界面设计:
为了保护药店销售管理系统的安全性,所以设置必须输入账号密码才能进入系统。
(2)主界面设计:
为了让系统更加简洁,更加人性化,特加入主界面,能够让操作人员更加清晰的找到需要的功能,只要用户在该界面选择对应的按钮,他就会弹出与各个相对应的界面。
(3)添加品名设计:
为了能够使自己的药店更加多元化,更加容易管理,引入添加药品名称的设计。
能够让使用者更加清晰的知道现如今自己药店中药品的种类以及药品类型,以进行更加方便的进货以及添加新的药品。
(4)修改品名设计:
为了让使用者在不使用某一家的药品或者药品信息更改后进行及时的删除修改。
保持药品库的实时性。
(5)入库设计:
能够在该页面对已经录入的药品名进行入库,会自动添加入库时间,生成一个批次编号,方便管理,能够在售卖中及时发现哪批货物为最先入库的。
(6)会员管理设计:
进行会员系统的设计能够让药店更好的锁定固定用户,在此界面中,使用者可以对会员信息进行录入,修改以及删除。
(7)出售管理设计:
出售管理中能够根据药品ID以及药品名称进行搜索,查找药品然后售卖,并且有会员检测机制,当输入正确的会员ID后检测然后进行打折。
(8)有效期查询设计:
能够对库存中的药品进行有效期查询,当有效期低于一定的时间就会在此窗口显示出来,并且支持对即将过期药品和已经过期的药品进行销毁处理。
(9)盈利查询设计:
能够对规定时间范围的订单进行查询,并且计算总定价、总售价和总盈利。
能够详细显示药品批次ID、购买人的ID,时间、数量。
如果是非会员就会显示出为匿名,默认是对所有的订单进行计算查询
(10)缺货查询设计:
自动对售卖过程中的药品进行统计,当数量低于一定数值的会自动在缺货单中显示出来,并且显示目前状态,如果进行进货后会将未处理改为已处理。
(11)退出功能设计:
此功能比较简单,仅仅在弹出警告窗口后退出。
第4章详细设计与实现
4.1模块流程图
根据系统需求做出的模块之间的大致流程图如下4-1所示。
图4-1
4.2界面效果图及代码
(1)药店登录界面如图4-1
图4-1
主要代码如下
privatevoidloginActionPerformed(ActionEventevt){
StringuserName=this.UserNameTxt.getText();
Stringpassword=newString(this.UserPawTxt.getPassword());
if(StringUtil.isEmpty(userName)){
JOptionPane.showMessageDialog(null,"用户名不能为空!
");
return;
}
if(StringUtil.isEmpty(password)){
JOptionPane.showMessageDialog(null,"密码不能为空!
");
return;
}
Useruser=newUser(userName,password);
Connectioncon=null;
try{
con=dbUtil.getCon();
UsercurrentUser=userDao.login(con,user);
if(currentUser!
=null){
dispose();
newMainFrm().setVisible(true);
}else{
JOptionPane.showMessageDialog(null,"用户名或者密码错误!
");
}
}catch(Exceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}finally{
try{
dbUtil.closeCon(con);
}catch(Exceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}}}
(2)药店主界面如图4-2
图4-2
(3)入库界面如图4-3
图4-3
主要代码:
privatevoidDrugAddAction(ActionEvente){
Connectioncon=null;
StringdName=dNameTxt.getText();
StringdClass=dClassTxt.getText();
StringsName=sNameTxt.getText();
StringdNo="";inta=0;
DrugDaodrugDao=newDrugDao();
Drugdrug=newDrug(dNo,dName,dClass,sName);
try{
con=dbUtil.getCon();
a=drugDao.insert(con,drug);
}catch(Exceptione1){
//TODOAuto-generatedcatchblock
e1.printStackTrace();
}
if(a==1){
JOptionPane.showConfirmDialog(null,"添加成功");
resetValue();
}else{
JOptionPane.showConfirmDialog(null,"添加失败");
}}
(4)添加药品如图4-4
图4-4
(5)修改药品如图4-5
图4-5
主要代码如下:
privatevoiddrugAddActionPerformed(ActionEventevt)throwsSQLException{
StringpQuantity=this.pQuantityTxt.getText();
StringdBidd=this.dBiddTxt.getText();
Stringdprice=this.dPriceTxt.getText();
Stringout_date=this.out_dateTxt.getText();
introw=drugTable.getSelectedRow();
Stringdno=(String)drugTable.getValueAt(row,0);
Stringdname=(String)drugTable.getValueAt(row,1);
Stringdclass=(String)drugTable.getValueAt(row,2);
Stringsname=(String)drugTable.getValueAt(row,3);
if(StringUtil.isEmpty(pQuantity)){
JOptionPane.showMessageDialog(null,"数量不能为空!
");
return;
}
if(StringUtil.isEmpty(dBidd)){
JOptionPane.showMessageDialog(null,"进价不能为空!
");
return;
}
if(StringUtil.isEmpty(dprice)){
JOptionPane.showMessageDialog(null,"售价不能为空!
");
return;
}
DrugStoredrugStore=newDrugStore(dno,dname,dclass,sname,Integer.parseUnsignedInt(pQuantity),Float.parseFloat(dBidd),Float.parseFloat(dprice),out_date,mName);
Connectioncon=null;
try{
con=dbUtil.getCon();
intaddNum=drugStoreDao.add(con,drugStore);
if(addNum==1){
JOptionPane.showMessageDialog(null,"入库成功!
");
resetValue();
}else{
JOptionPane.showMessageDialog(null,"入库失败!
");
}
}catch(Exceptione){
e.printStackTrace();
JOptionPane.showMessageDialog(null,"入库失败!
");
}finally{
try{
dbUtil.closeCon(con);
}catch(Exceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}}}
(6)会员管理界面如图4-6
图4-6
主要代码如下:
privatevoidcustromerAddActionEvent(ActionEvente){
Connectioncon=null;
StringcNo=this.cNoTxt.getText();
StringcName=this.cNameTxt.getText();
StringcAge=this.cAgeTxt.getText();
StringcPhone=this.cPhoneTxt.getText();
StringcEmail=this.cEmailTxt.getText();
StringcAddress=this.cAddressTxt.getText();
Customercustomer=newCustomer(cNo,cName,Integer.parseInt(cAge),cPhone,cEmail,cAddress);
try{
con=dbUtil.getCon();
intaddNum=customerDao.add(con,customer);
if(addNum==1){
JOptionPane.showMessageDialog(null,"添加成功!
");
resetValue();
}else{
JOptionPane.showMessageDialog(null,"添加失败!
");
}
}catch(Exceptione1){
//TODOAuto-generatedcatchblock
e1.printStackTrace();}}
(7)出售管理界面如图4-7
图4-7
主要代码如下:
//监听会员信息事件
privatevoidisNotUser1(ActionEvente2){
introw=drugTable.getSelectedRow();
Connectioncon=null;
StringcNo=this.cNoTxt.getText();
custormerDao=newCustomerDao();
Customercustomer=newCustomer(cNo);
try{
con=dbUtil.getCon();
}catch(Exceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
if(custormerDao.IsCustomer(con,customer)){
userTxt.setText("是");
per=(float)0.95;
}else{
per=1;
userTxt.setText("否");
return;}}
//计算总金额事件
privatevoiddrugActionMoney(MouseEventarg0){
Stringcmuantity=this.cMuantityTxt.getText();
if(StringUtil.isNotEmpty(this.cMuantityTxt.getText())){
if(Integer.parseInt(cmuantity)<=Integer.parseInt(cMuantity)){
cMoneyTxt.setText(String.valueOf(per*money*Integer.parseInt(cmuantity)));
zmoney=per*money*Integer.parseInt(cmuantity);}
else{
JOptionPane.showConfirmDialog(null,"购买数量不能大于库存量");
return;}}}
(8)有效期查询如图4-8
图4-8
(9)销售查询如图4-9
图4-9
(10)缺货查询如图4-10
图4-10
第5章总结
生活中处处需要处理数据,在人工管理阶段,人们耗费大量的人力、时间等
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 最新 Java 药店 管理 系统 设计 报告 模板
![提示](https://static.bdocx.com/images/bang_tan.gif)