Android课程设计报告.docx

上传人:b****6 文档编号:7732026 上传时间:2023-01-26 格式:DOCX 页数:43 大小:804.66KB
下载 相关 举报
Android课程设计报告.docx_第1页
第1页 / 共43页
Android课程设计报告.docx_第2页
第2页 / 共43页
Android课程设计报告.docx_第3页
第3页 / 共43页
Android课程设计报告.docx_第4页
第4页 / 共43页
Android课程设计报告.docx_第5页
第5页 / 共43页
点击查看更多>>
下载资源
资源描述

Android课程设计报告.docx

《Android课程设计报告.docx》由会员分享,可在线阅读,更多相关《Android课程设计报告.docx(43页珍藏版)》请在冰豆网上搜索。

Android课程设计报告.docx

Android课程设计报告

 

《移动应用技术》

课程设计报告

 

题目:

基于Android的金源书店库存管理系统的开发及设计

学生姓名:

 

专业:

信息管理及信息系统

班级:

指导教师:

信息管理及工程系

2015年5月28日

基于Android的金源书店库存管理系统的开发及设计

摘要:

金源书店库存管理系统是典型的信息管理系统(MISManagementInformationSystem),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。

对于前者要求建立起数据一致性和完整性强、数据安全性好的数据库。

而对于后者则要求应用程序功能完备,易使用等特点。

经过分析,本小组决定采用SQLite建立数据库后台,使用Eclipse开发工具,利用其提供的各种面向对象的开发工具进行开发。

本系统通过基本信息管理对供应商、顾客和商品进行基本信息的管理。

通过库存管理进行商品的入库出库操作来完成商品信息的管理。

经过本小组近一个月的刻苦学习及实践,如期完成了系统的开发工作,实现了金源书店库存管理系统一些基本功能。

窗体底端

关键字:

信息管理系统,数据库,出库,入库

1项目简介及分工

1.1项目简介

金源书店库存管理是通过采购、仓储、综合、出库、配送等活动,解决物资供需之间存在的时间、空间、数量、品种价格等方面的矛盾,以此衔接社会生产的各环节,从而确保生产的顺利进行。

传统仓库管理完全由人来完成,以手工记录为主,当企业的物流业务成长到一定规模之后,随着订单数量的增加,客户需求不断个性化,执行效率就成为物流发展的瓶颈,单纯依靠人力资源的增加已不能提升出入库执行的速度,反而带来成本的大幅度上升及差错频频。

因此,本系统以提高仓库管理人员的工作效率,降低其工作量、减少手工操作的差错率、提高库存的准确率为初衷,针对金院地下超市仓库的管理模式,提出此项目的制作,且利用计算机技术及现代的管理技术相互配合,来更加准确、高速地完成工业企业日常的仓库管理工作。

使企业能够以最少的人员来完成更多的工作。

为此实现了本系统的完成。

本小组采用SQLite建立数据库后台,使用Eclipse开发工具,利用其提供的各种面向对象的开发工具进行开发。

本系统通过基本信息管理对供应商、顾客和商品进行基本信息的管理。

通过库存管理进行商品的入库出库操作来完成商品信息的管理。

 

1.2项目分工

本项目分工情况如表1-1所示:

表1-1项目分工表

模块划分

负责人

 

基本信息管理

 

供应商信息管理

添加供应商信息

 

修改供应商信息

删除供应商信息

查询供应商信息

 

顾客信息管理

添加顾客信息

修改顾客信息

删除顾客信息

查询顾客信息

 

商品信息管理

添加商品信息

 

查询商品信息

修改商品信息

删除商品信息

 

库存管理

 

入库管理

添加入库商品信息

 

修改入库商品信息

删除入库商品信息

查询入库商品信息

 

出库管理

添加出库商品信息

修改出库商品信息

删除出库商品信息

查询出库商品信息

信息查询

库存信息查询

 

系统设置

用户管理

登录注册

 

查询用户

修改密码

删除用户

退出

退出系统

关于

关于该软件

2项目设计方案

3

图2-1系统功能模块图

图2-1系统功能模块图列出了系统的主要功能模块。

包括基本信息管理,库存信息管理以及系统设置。

其中基本信息管理又包括供应商信息管理,顾客信息管理以及商品信息管理。

库存信息管理包括入库管理和出库管理。

系统设置包括登录注册、修改密码和退出三个功能。

其中供应商信息管理包括添加供应商信息、修改供应商信息、删除供应商信息、查询供应商信息四个子功能。

顾客信息管理包括添加顾客信息、修改顾客信息、删除顾客信息、查询顾客信息四个子功能。

商品信息管理包括添加商品信息、修改商品信息、删除商品信息、查询商品信息四个子功能。

入库管理包括添加入库商品信息、修改入库商品信息、删除入库商品信息、查询入库商品信息四个子功能。

出库管理包括添加出库商品信息、修改出库商品信息、删除出库商品信息、查询出库商品信息四个子3功能。

 

总体框架如图2-2所示:

图2-2总体框架图

4用到的技术

3.1用户登录模块

用户登录模块是系统模块中一个重要的子系统模块,它是系统安全的一个保障。

它的主要功能是安全帐号管理,需要正确帐号和密码才能进入系统。

对于错误帐号和密码给出提示。

图3-1登录界面

处理流程:

输入:

用户名和密码。

处理:

(1)用户登录窗体启动。

(2)用户填写用户名并输入密码。

(3)从操作人员表中检查是否有相应的用户名和密码。

(4)如果用户名或密码错误,进行提示。

(5)如果输入的用户名和相应密码正确,则根据该用户的权限类别进行权限设置。

(6)进入主控制平台。

Y

设计流程图,如图3-2所示:

图3-2登录流程图

相关代码如下:

publicclassStoreManagementActivityextendsActivity{

privateEditTextuse;//用户名

privateEditTextpassword;//密码

SqlHelpdemodb;

SQLiteDatabasesDatabase=null;

publicvoidonCreate(BundlesavedInstanceState){

super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_NO_TITLE);

setContentView(R.layout.main);

use=(EditText)findViewById(R.id.edi1);

password=(EditText)findViewById(R.id.edi2);

db=newSqlHelpdemo(getApplicationContext(),"store.db",null,1);

sDatabase=db.getWritableDatabase();

}

//登录按钮监听

publicvoidonload(Viewv)

{

//定义取数据的字符串

StringuserName="";

StringuserPw="";

Stringi=use.getText().toString();

//编写数据库语句

Stringselect_sql="selectusername,passwordfromuser_infowhereusername='"+i+"'";

//执行语句

Cursorcursor=sDatabase.rawQuery(select_sql,null);

cursor.moveToFirst();

//将从数据中取出的用户名和密码赋值给两个字符串变量

try

{

userName=cursor.getString(0);

userPw=cursor.getString

(1);

}catch(Exceptione)

{

//TODO:

handleexception

userName="";

userPw="";

}

//判断用户名是否为空

if(use.getText().toString().equals(""))

{

DialogDemo.builder(StoreManagementActivity.this,"错误信息",

"用户名不能为空!

");

}

//判断密码是否为空

elseif(password.getText().toString().equals(""))

{

DialogDemo.builder(StoreManagementActivity.this,"错误信息",

"密码不能为空!

");

}

//判断用户名和密码是否正确

elseif(!

(use.getText().toString().equals(userName)&&password

.getText().toString().equals(userPw)))

{

DialogDemo.builder(StoreManagementActivity.this,"错误信息",

"用户名或密码错误,请重新输入");

}

//全部正确跳转到操作界面

else

{

cursor.close();

Intentintent=newIntent();

Bundlebundle=newBundle();

bundle.putString("username",userName);

intent.putExtras(bundle);

intent.setClass(getApplicationContext(),MenuDemo.class);

startActivity(intent);

}

}

注册界面如图3-3所示:

 

图3-3注册界面

相关代码如下:

protectedvoidonCreate(BundlesavedInstanceState){

//TODOAuto-generatedmethodstub

super.onCreate(savedInstanceState);

setContentView(R.layout.userregister);

name=(EditText)findViewById(R.id.usename);

pass=(EditText)findViewById(R.id.password);

passsure=(EditText)findViewById(R.id.passwordsure);

workid=(EditText)findViewById(R.id.useide);

db=newSqlHelpdemo(getApplicationContext(),"store.db",null,1);

sDatabase=db.getWritableDatabase();

}

publicvoidsure(Viewv){

db=newSqlHelpdemo(getApplicationContext(),"store.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,"错误信息","请填写完整信息!

");

}elseif(!

pass.getText().toString()

.equals(passsure.getText().toString())){

DialogDemo.builder(UserRegister.this,"错误信息","两次密码输入不一致!

");

}else{

Stringename=name.getText().toString();

Stringepass=pass.getText().toString();

Stringeid=workid.getText().toString();

//查询语句

StringselectStr="selectusernamefromuser_info";

Cursorselect_cursor=sDatabase.rawQuery(selectStr,null);

select_cursor.moveToFirst();

Stringstring=null;

do{

try{

string=select_cursor.getString(0);

}catch(Exceptione){

//TODO:

handleexception

string="";

}

if(string.equals(ename)){

DialogDemo.builder(UserRegister.this,"错误信息",

"用户名已存在,请另设用户名");

select_cursor.close();

break;

}

}while(select_cursor.moveToNext());

//没有重名注册开始

if(!

string.equals(ename)){

//定义ID

intid=0;

Stringselect="selectmax(_id)fromuser_info";

CursorseCursor=sDatabase.rawQuery(select,null);

try{

seCursor.moveToFirst();

id=Integer.parseInt(seCursor.getString(0));

id+=1;

}catch(Exceptione){

//TODO:

handleexception

id=0;

}

sDatabase.execSQL("insertintouser_infovalues('"+id+"','"+ename+"','"+epass+"','"+eid+"')");

DialogDemo.builder(UserRegister.this,"提示","注册成功,请返回登录界面登录");

seCursor.close();

}

}

3.2基本信息管理

基本信息管理包括供应商信息管理、客户信息管理和商品信息管理:

供应商是商品在入库时提供商品的人,在进行入库操作时必须先添加该商品的供应商的信息。

供应商的信息包括供应商的公司名称,联系人姓名,联系人地址,城市名称,地区名称,邮政编码,联系电话,传真号码,公司主页等基本信息。

这些都是必须要求输入的。

本程序提供了增加,删除,修改和查询供应商信息的功能。

增加:

当有新的供应商提供商品的时候需要使用此功能。

删除:

当及某供应商取消贸易关系时,需要把供应商信息从系统中删除。

修改:

当某供应商基本信息发生改变时,可以修改供应商信息。

查询:

可以查询库中任何供应商的信息。

因此仓库管理员可以方便的进行供应商信息的管理。

添加供应商信息的对话框如图3-4所示:

N

图3-4添加供应商信息

添加供应商信息操作步骤及处理流程:

(1)选择基本信息管理->供应商信息管理->添加供应商信息

(2)出现图3-4所示对话框

(3)用户输入公司名称,联系人姓名,联系人地址,城市名称,地区名称,邮政编码,联系电话,传真号码,公司主页

(4)点击保存.如果其中有空项,会提示该项不能为空.要求用户重新输入

(5)弹出提示框显示供应商信息已经加入。

(6)用户可以继续加入供应商信息或者点返回进行其它操作。

设计流程图,如图3-5所示:

图3-5添加供应商流程图

相关代码如下:

protectedvoidonCreate(BundlesavedInstanceState){

//TODOAuto-generatedmethodstub

super.onCreate(savedInstanceState);

setContentView(R.layout.tianjiag);

setTitle("添加供应商信息");

Intentinte=getIntent();

Bundlename=inte.getExtras();

names=inte.getStringExtra("username");

db=newSqlHelpdemo(getApplicationContext(),"store.db",null,1);

sDatabase=db.getWritableDatabase();

gsmc=(EditText)findViewById(R.id.gsmce);

lxr=(EditText)findViewById(R.id.lxre);

csmc=(EditText)findViewById(R.id.csmce);

lxdz=(EditText)findViewById(R.id.lxdze);

dqmc=(EditText)findViewById(R.id.dqmce);

yzbm=(EditText)findViewById(R.id.yzbme);

lxdh=(EditText)findViewById(R.id.lxdhe);

czhm=(EditText)findViewById(R.id.czhme);

gszy=(EditText)findViewById(R.id.gszye);

}

publicvoidsave1(Viewv){

if(gsmc.getText().toString().equals("")){

DialogDemo.builder(Tianjiag.this,"提示","请输入公司名称");

}

else{

//查询语句

Stringegsmc=gsmc.getText().toString();

Stringelxr=lxr.getText().toString();

Stringelxdz=lxdz.getText().toString();

Stringecsmc=csmc.getText().toString();

Stringedqmc=dqmc.getText().toString();

Stringeyzbm=yzbm.getText().toString();

Stringelxdh=lxdh.getText().toString();

Stringeczhm=czhm.getText().toString();

Stringegszy=gszy.getText().toString();

StringselectStr="selectcomnamefromgongys";

Cursorcursor=sDatabase.rawQuery(selectStr,null);

cursor.moveToFirst();

Stringnameg=null;

do{

try{

nameg=cursor.getString(0);}catch(Exceptione){

//TODO:

handleexception

nameg="";

}

if(nameg.equals(egsmc)){

DialogDemo.builder(Tianjiag.this,"错误信息","该公司信息已存在");

cursor.close();

break;

}

}while(cursor.moveToNext());

if(!

nameg.equals(egsmc)){

//定义ID

intid=0;

Stringselect="selectmax(_id)fromgongys";

CursorseCursor=sDatabase.rawQuery(select,null);

try{

seCursor.moveToFirst();

id=Integer.parseInt(seCursor.getString(0));

id+=1;

}catch(Exceptione){

//TODO:

handleexception

id=0;

}

sDatabase.execSQL("insertintogongysvalues('"+id+"','"+egsmc+"','"+elxr+"','"+elxdz+"','"+ecsmc+"','"+edqmc+"','"+eyzbm+"','"+elxdh+"','"+eczhm+"','"+egszy+"')");

Toast.makeText(Tianjiag.this,"添加成功",Toast.LENGTH_LONG).show();

seCursor.close();

}

}

}

修改供应商信息步骤及处理流程:

(1)选择要修改的供应商信息

(2)选择基本信息管理->供应商信息管理->修改供应商信息

(3)用户可以修改供应商的基本信息,修改完后点保存

(4)如果其中有空项或非法字符,会提示该项不能为空或输入不合要求.要求用户重新输入

(5)更新供应商信息列表。

显示信息已经修改

(6)用户可以继续加入供应商信息或者点返回进行其它操作

设计流程图,如图3-6所示:

 

图3-6修改供应商信息流程图

相关代码如下:

protectedvoidonCreate(BundlesavedInstanceState){

//TODOAuto-generatedmethodstub

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 研究生入学考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1