一、项目概述
   
本次项目实现了一个简单的仓库管理系统。用户身份分为超级管理员、出入库人员和商品管理员这三种角色。首先进行超级管理员的注册,然后登录超级管理员的账号和密码,进入主页之后进行添加用户,超级管理员可以添加和查询其他两种用户角色。用超级管理员创建好的用户账号和密码登录,会有不同的权限。如果是商品管理员,可以对商品进行添加和查询功能。如果是出入库人员,可以对商品进行入库、出库功能。项目结构很清晰,逻辑通俗易懂,代码注释非常详细。
    
     主要功能包含欢迎、注册、登录、用户及商品操作等十多个界面,ListView列表,SqlLite数据库的增删改查、下拉框、intent传值等。
    
   
    
    
    二、开发环境
   
    Android Studio的版本只要在3.6.1及以上都行,配置5.6.4的gradle就可以。
    
     
   
    
    
    三、项目结构
   
结构很清晰,一共五个package,我们从下往上介绍:
- entity是实体类 ,包含商品类和用户类
- database是数据库,包含DBHelper数据库操作类
- app是应用,包含欢迎、注册和登录三大Activity
- adapter是适配器,在设置列表内容时,需要加载对应的用户或者商品适配器
- activity是项目主要的activity,用户列表、查询、插入和删除等,商品类似
     
   
    
    
    四、数据库文件
   
    在database包底下的这个类就是数据库的类
    
     
   
首先是对数据库名称和版本号的说明,然后是数据库的字段名,最后是数据库的表名。
    这里只建了两张表:
    
    一张是
    
     用户表user,有用户名uername、密码password和权限power三个字段;
    
    
    一张是
    
     商品表goods,有商品编号id,商品名称goods_name和商品数量amount三个字段。
    
 	private static final String DATABASE_NAME = "storemanager.db";
    private static final int VERSION = 1;
    //数据库字段名
    private static final String KY_USERNAME = "username";
    private static final String KY_PASSWORD = "password";
    private static final String KY_POWER = "power";//权限:商品管理员/出入库员
    private static final String KY_ID = "id";//商品编号
    private static final String KY_GOODSNAME = "goods_name";
    private static final String KY_AMOUNT = "amount";//商品数量
    //数据库表名
    private static final String TABLE_USER = "user";
    private static final String TABLE_GOODS = "goods";
    SQLiteDatabase db;
接着在onCreate方法中写建表语句并执行,这样两张表就创建完成了。
    public void onCreate(SQLiteDatabase db) {
        //创建用户表
        final String createUser = "create table " + TABLE_USER + "(" + KY_USERNAME + " text primary key,"
                + KY_PASSWORD + " text not null,"
                + KY_POWER + " text not null);";
        System.out.println(createUser);
        db.execSQL(createUser);
        //创建商品表
        final String createGoods = "create table " + TABLE_GOODS + "(" + KY_ID + " integer primary key autoincrement,"
                + KY_GOODSNAME + " text,"
                + KY_AMOUNT + " integer);";
        System.out.println(createGoods);
        db.execSQL(createGoods);
    }
然后下面就是增删改查的逻辑了,数据库说白了就是增insert,删delete,改update,查select。这里具体实现可以看Android基础教程里面的数据库那一章,创建db其实是最复杂的一种数据存储。
    //通过用户名查询用户信息
    public User searchUser(String username) {
        Cursor cursor = db.query(TABLE_USER, new String[]{KY_USERNAME, KY_PASSWORD, KY_POWER}, KY_USERNAME + "=?", new String[]{username}, null, null, null);
        User u = new User();
        if (cursor.moveToFirst()) {
            u.setUsername(cursor.getString(0));
            u.setPassword(cursor.getString(1));
            u.setPower(cursor.getInt(2));
        }
        return u;
    }
    成功运行项目后,在Android Studio的右侧打开Device File Explore,找到data目录。
    
    
    
    打开data目录下面的data目录,找到我们的包名,如下所示,然后展开看到warehouse.db这个文件,它就是我们要找的数据库文件,warehouse.db-journal是日志文件不用管。
    
    
    
    将db文件右击保存到本地,再用数据库的工具SQL Server、SQLite或者Navicat等等打开,就可以看到数据表中的内容了。
   
    
    
    五、项目演示
   
Android Studio实现功能丰富的仓库管理系统
    
    
    六、源码获取
   
| ♻️下面两种方式都可以获取源代码 | 
|---|
| 1️⃣ 点击直接下载 Android Studio 仓库管理系统 | 
| 2️⃣ 关注公众号《 萌新加油站 》,后台回复: 仓库 | 
| ?这有你错过的精彩内容 | 
|---|
| Android Studio实现外卖订餐系统 | 
| Android Studio实现考试管理系统 | 
| Android Studio实现天气预报系统 | 
| Android Studio实现图书馆订座系统 | 
| Android Studio实现前后台分离的选课系统 | 
你人生的每一步都必须靠自己的能力完成,自己肚子没有料,手上没本事,认识再多的人也没用。人脉只能给你机会,但抓住机会还是要靠真本事。所以啊,提升自己,比到处逢迎别人更重要。
 
