1、Android 课程设计报告书题目:RFID 药品 WMS仓库管理系统院(系)别 交通与物流工程学院 专 业 物联网工程专业 班 级 物联 132 成 员 伊 华 130516234 宫玮钰 130516229 刘文清 130516238 指导教师 贾 雁 二一六年六月山东交通学院课程设计报告1目 录一、 摘要 .2二、 课题及要求 .3三、 程序功能简介 .3四、主体内容 .34.1 设计分析 34.2 程序结构图 34.3 模块功能及程序说明 44.3.1 登录界面 44.3.2 注册信息 64.3.3 选项卡操作 10五、总结 .16六、参考文献 .17山东交通学院课程设计报告21、摘要
2、随着智能手机的快速普及,智能手机操作系统市场风生水起。为了让智能手机用户能够随时随地的查询互联网所提供的服务,一种高效的办法就是将应用系统的功能拓展到手机终端上,让手机能够通过移动网以及互联网访问 Web网站并处理各种各样业务。因此,智能手机的应用软件及其需要的服务将有广阔的发展前景。在如今这个智能手机系统群雄纷争的时候,2008 年 Google 推出了一款名为 Android 的开源智能手机操作系统。它的最大特点是其开放性体系架构,不仅具有非常好的开发、调试环境,而且还支持各种可扩展的用户体验,包括丰富的图形组件、多媒体支持功能以及强大的浏览器。本文是关于Android 技术基础的 RFI
3、D 药品 WMS 仓库管理系统。关键字:Android 智能手机 仓库管理系统山东交通学院课程设计报告32、课题及要求1、课题:RFID 药品 WMS仓库管理系统 2、目的:1)复习、巩固 Android 相关技术的基础知识,进一步加深对 Android 开发技术的理解和掌握;2)课程设计为学生提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼学生的分析解决实际问题的能力;3)培养学生在项目开发中团队合作精神、创新意识及能力。3、要求:1)对系统进行功能模块分析,符合课题要求,实现相应功能2)系统设计要实用,编程简练,可用,功能全面3)说明书、流程图要清楚3、
4、程序功能简介经过一系列的编程与实验之后,能够实现简单的一下操作:登录界面,实现药品的入库、移库、盘点、药品有效期提醒、出库等功能。4、主体内容4.1设计分析这是一个基于 Android 技术基础的 RFID 药品 WMS 仓库管理系统。,这次的课程设计我们主要是应用现有的 Eclipse 软件,实现药品仓库管理的相关操作。设计中包括用户界面登录和操作界面。在登录界面又包括注册跟登录及密码的设置,在操作界面包含入库管理、移库管理、出库管理、盘点查询及有效期提醒等。 4.2程序结构图山东交通学院课程设计报告44.3模块功能及程序说明4.3.1 登录界面Button android:id=“+id/
5、btn2“山东交通学院课程设计报告6android:layout_width=“100sp“android:layout_height=“wrap_content“android:text=“注册“android:layout_below=“id/edi2“android:layout_toRightOf=“id/btn1“android:onClick=“onres“4.3.2 注册信息package sheji.kecheng;import sheji.kecheng.R;import android.app.Activity;import android.content.Intent;i
6、mport android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import android.os.Bundle;import android.view.View;import android.widget.EditText;import android.widget.Toast;/*山东交通学院课程设计报告7* 用户注册页面 */public class UserRegister extends Activity private EditText name;private EditText pass;pr
7、ivate EditText passsure;private EditText workid;SqlHelpdemo db;SQLiteDatabase sDatabase = null;Overrideprotected void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState);setContentView(R.layout.userregister);name = (EditText) findViewById(R.id.usename);pass = (EditText) findViewBy
8、Id(R.id.password);passsure = (EditText) findViewById(R.id.passwordsure);workid = (EditText) findViewById(R.id.useide);db = new SqlHelpdemo(getApplicationContext(), “store.db“, null, 1);sDatabase = db.getWritableDatabase();public void sure(View v) db = new SqlHelpdemo(getApplicationContext(), “store.
9、db“, null, 1);sDatabase = db.getWritableDatabase();if (name.getText().toString().equals(“)| pass.getText().toString().equals(“)| passsure.getText().toString().equals(“)| workid.getText().toString().equals(“) DialogDemo.builder(UserRegister.this, “错误信息“, “请填写完整信息!“); else if (!pass.getText().toString
10、().equals(passsure.getText().toString() 山东交通学院课程设计报告8DialogDemo.builder(UserRegister.this, “错误信息“, “两次密码输入不一致!“); else String ename = name.getText().toString();String epass = pass.getText().toString();String eid = workid.getText().toString();/ 查询语句String selectStr = “select username from user_info“;
11、Cursor select_cursor = sDatabase.rawQuery(selectStr, null);select_cursor.moveToFirst();String string = null;do try string = select_cursor.getString(0); catch (Exception e) / TODO: handle exceptionstring = “;if (string.equals(ename) DialogDemo.builder(UserRegister.this, “错误信息“,“用户名已存在,请另设用户名“);select
12、_cursor.close();break; while (select_cursor.moveToNext();/ 没有重名注册开始if (!string.equals(ename) / 定义 IDint id = 0;String select = “select max(_id) from user_info“;山东交通学院课程设计报告9Cursor seCursor = sDatabase.rawQuery(select, null);try seCursor.moveToFirst();id = Integer.parseInt(seCursor.getString(0);id +=
13、 1; catch (Exception e) / TODO: handle exceptionid = 0;sDatabase.execSQL(“insert into user_info values(“ + id + “,“+ ename + “,“ + epass + “,“ + eid + “)“);DialogDemo.builder(UserRegister.this, “提示“, “注册成功,请返回登录界面登录“);seCursor.close();山东交通学院课程设计报告104.3.3 选项卡操作package sheji.kecheng;import sheji.keche
14、ng.R;import android.app.TabActivity;import android.content.Intent;import android.graphics.Color;import android.opengl.Visibility;import android.os.Bundle;import android.view.LayoutInflater;import android.view.View;import android.widget.Button;import android.widget.TabHost;山东交通学院课程设计报告11import androi
15、d.widget.TabWidget;/* 主菜单页面* * author 宫玮钰* */public class MenuDemo extends TabActivity private Button tianjia1; /添加用户键private Button xiugai1; /修改用户键private Button shanchu1; /删除用户键private Button chaxun1; /查询用户键private Button tianjia2; /添加商品键private Button xiugai2; /修改商品键private Button shanchu2;/ 删除商品
16、键private Button chaxun2;/ 查询商品键private Button tianjia3;/ 添加供应商键private Button xiugai3;/ 修改供应商键private Button shanchu3;/ 删除供应商键private Button chaxun3;/ 查询供应商键private Button tianjia4;/ 添加入库键private Button xiugai4;/ 修改入库键private Button shanchu4;/ 删除入库键private Button chaxun4;/ 查询入库键private Button tianji
17、a5;/ 添加出库键private Button xiugai5;/ 修改出库键private Button shanchu5;/ 删除出库键山东交通学院课程设计报告12private Button chaxun5;/ 查询出库键private Button yonghu;/ 用户管理键private Button mima;/ 修改密码键String names = null;protected void onCreate(Bundle savedInstanceState) / TODO Auto-generated method stubsuper.onCreate(savedInsta
18、nceState);TabHost tab = getTabHost();tab.setPadding(0, -30, 0, 0);tab.setDrawingCacheBackgroundColor(Color.BLUE);LayoutInflater inf = getLayoutInflater();inf.inflate(R.layout.menudemo, tab.getTabContentView();Bundle name = getIntent().getExtras();names = name.getString(“username“);/* tabhost.tabspec
19、 创建*/final TabHost.TabSpec tabs1 = tab.newTabSpec(“入库管理“);tabs1.setContent(R.id.li1);tabs1.setIndicator(“入库管理“, null);final TabHost.TabSpec tabs2 = tab.newTabSpec(“移库管理“);tabs2.setContent(R.id.li2);tabs2.setIndicator(“移库管理“, null);final TabHost.TabSpec tabs3 = tab.newTabSpec(“盘点查询“);tabs3.setContent
20、(R.id.li4);tabs3.setIndicator(“盘点查询“, null);山东交通学院课程设计报告13final TabHost.TabSpec tabs4 = tab.newTabSpec(“出库管理“);tabs4.setContent(R.id.li3);tabs4.setIndicator(“出库管理“, null);final TabHost.TabSpec tabs5 = tab.newTabSpec(“有效期提醒“);tabs5.setContent(R.id.li5);tabs5.setIndicator(“有效期提醒“, null);final TabHost.
21、TabSpec tabs6 = tab.newTabSpec(“关于“);tabs6.setContent(R.id.li6);tabs6.setIndicator(“关于“, null);tab.addTab(tabs1);tab.addTab(tabs2);tab.addTab(tabs4);tab.addTab(tabs3);tab.addTab(tabs5);tab.addTab(tabs6);/* 商品信息按钮监听* * param v*/public void onshangpin(View v) tianjia1.setVisibility(View.VISIBLE);/* 供应
22、商信息按钮监听* * param v山东交通学院课程设计报告14*/public void ongongyingshang(View v) tianjia3.setVisibility(View.VISIBLE);xiugai3.setVisibility(View.VISIBLE);shanchu3.setVisibility(View.VISIBLE);chaxun3.setVisibility(View.VISIBLE);tianjia2.setVisibility(View.INVISIBLE);xiugai2.setVisibility(View.INVISIBLE);shanchu
23、2.setVisibility(View.INVISIBLE);chaxun2.setVisibility(View.INVISIBLE);tianjia1.setVisibility(View.INVISIBLE);xiugai1.setVisibility(View.INVISIBLE);shanchu1.setVisibility(View.INVISIBLE);chaxun1.setVisibility(View.INVISIBLE);/* 客户信息按钮监听* * param v*/public void onkehu(View v) tianjia2.setVisibility(Vi
24、ew.VISIBLE);xiugai2.setVisibility(View.VISIBLE);shanchu2.setVisibility(View.VISIBLE);chaxun2.setVisibility(View.VISIBLE);tianjia1.setVisibility(View.INVISIBLE);xiugai1.setVisibility(View.INVISIBLE);shanchu1.setVisibility(View.INVISIBLE);chaxun1.setVisibility(View.INVISIBLE);tianjia3.setVisibility(Vi
25、ew.INVISIBLE);山东交通学院课程设计报告15xiugai3.setVisibility(View.INVISIBLE);shanchu3.setVisibility(View.INVISIBLE);chaxun3.setVisibility(View.INVISIBLE);/* 商品入库信息按钮监听* * param v*/public void onruku(View v) tianjia4.setVisibility(View.VISIBLE);xiugai4.setVisibility(View.VISIBLE);shanchu4.setVisibility(View.VIS
26、IBLE);chaxun4.setVisibility(View.VISIBLE);tianjia5.setVisibility(View.INVISIBLE);xiugai5.setVisibility(View.INVISIBLE);shanchu5.setVisibility(View.INVISIBLE);chaxun5.setVisibility(View.INVISIBLE);* 添加出库按钮监听* * param v*/public void tianjiac(View v) Intent intent = new Intent();Bundle bundle = new Bun
27、dle();bundle.putString(“username“, names);intent.putExtras(bundle);intent.setClass(getApplicationContext(), Tianjiac.class);startActivity(intent);山东交通学院课程设计报告16/* 用户管理按钮监听* * param v*/public void yonghu(View v) Intent intent = new Intent();Bundle bundle = new Bundle();bundle.putString(“username“, na
28、mes);intent.putExtras(bundle);intent.setClass(getApplicationContext(), Yonghu.class);startActivity(intent);public void kucun(View v) Intent intent = new Intent();intent.setClass(MenuDemo.this, Kucun.class);startActivity(intent);山东交通学院课程设计报告175、总结通过本次课程设计,我们掌握了 Android 系统的基本概念、相关原理和技术,结合实际的操作和设计,巩固了课
29、堂教学的内容,将理论与实际相结合,应用现有的 Eclipse 软件,初步完成了一个小型药品 WMS 仓库管理系统的设计与实现,在设计期间,实践操作 Android 开发技术的相关知识,更加扎实掌握基础知识。山东交通学院课程设计报告186、参考文献1 余志龙.Google Android SDK 开发案例开发大全M.人民邮电出版社,2010.06.012 罗伟.基于 Android 平台的即时通讯系统的研究与实现D湖南师范大学,2009.03.01 3 公磊 周聪.基于 Android 的移动终端应用程序开发与研究J.计算机与现代化,2008(8)4 王向辉 沈洁.Android 应用程序开发M.清华大学出版社,2010.3