4、material_type
描述: 材料种类,我对材料进行了分类,这样统计起来也方便很多,另外建一个表是为了防止以后可能会对材料类型做的补充,同时节省存储空间。
表结构:
序号 | 字段名 | 数据类型 | 主键 | 非空 | 默认值 | 描述 |
1 | id | INT(10) | 是 | 是 | 类型id | |
2 | tname | VARCHAR(255) | 否 | 是 | 类型名称 | |
3 | introduce | VARCHAR(255) | 否 | 否 | 类型介绍 |
5、notice
描述: 公告表,用于存储公告信息
表结构:
序号 | 字段名 | 数据类型 | 主键 | 非空 | 默认值 | 描述 |
1 | id | INT(10) | 是 | 是 | 公告主键 | |
2 | title | VARCHAR(255) | 否 | 是 | 公告标题 | |
3 | content | VARCHAR(255) | 否 | 否 | 公告内容 | |
4 | time | DATETIME | 否 | 是 | 发布时间 |
6、standing_book
描述: 台账表,作业要求里有要台账表,但我觉得这和仓库调度表没啥区别,所以这个表我虽然建了,但实际并未使用。
表结构:
序号 | 字段名 | 数据类型 | 主键 | 非空 | 默认值 | 描述 |
1 | id | INT(10) | 是 | 是 | 台账记录id | |
2 | type | INT(10) | 否 | 是 | 0表示调入,1表示调出(外部);2表示调入(退料),3表示调出(领料)(内部调用) |
3 | quantity | INT(10) | 否 | 是 | 0 | 数量 |
4 | price | INT(10) | 否 | 是 | 0 | 总价 |
5 | material_name | VARCHAR(255) | 否 | 是 | 材料名称 |
7、transfer_record
描述: 转移表,这个是用来关联转移操作的。
表结构:
序号 | 字段名 | 数据类型 | 主键 | 非空 | 默认值 | 描述 |
1 | id | INT(10) | 是 | 是 | 转移记录id | |
2 | from_id | INT(10) | 否 | 是 | 转出仓库记录id | |
3 | to_id | INT(10) | 否 | 是 | 转入仓库记录id |
8、 user
描述: 用户表,这里的密码是经过加密存储的,所以就算黑客破解数据库了,那损失也不会太大。
表结构:
序号 | 字段名 | 数据类型 | 主键 | 非空 | 默认值 | 描述 |
1 | id | INT(10) | 是 | 是 | 用户id | |
2 | uname | VARCHAR(255) | 否 | 是 | 用户名称 | |
3 | authority | VARCHAR(255) | 否 | 否 | 表示权限等级(游客/员工/审核员/仓管员/系统管理员) |
4 | pwd | VARCHAR(255) | 否 | 否 | 用户登录密码(数据库存储的是加密后的) | |
5 | sex | VARCHAR(255) | 否 | 是 | 性别 | |
6 | depository_id | INT(10) | 否 | 否 | 负责仓库,序号表示仓库id,0表示全部仓库 |
7 | entry_date | DATE | 否 | 是 | 入职日期 | |
8 | VARCHAR(255) | 否 | 否 | 邮箱 | ||
9 | phone | VARCHAR(255) | 否 | 否 | 手机号 |
四、功能设计与展示
功能设计概览图
1.鉴权认证
这块如果要讲,如果要详细讲,东西会很多。这里只简要的提一下。
用户注册的时候,输入邮箱后点击发送验证码,服务器会先判断该用户邮箱是否已经被注册,如果没有则会向相应邮箱发送验证码,验证码有效时间默认为5分钟,有则返回提示信息告知用户该邮箱已被注册。
而输入信息和验证码后系统会进行校验,如果成功就对密码进行MD5加密,然后存入用户信息表中。
而对于用户登录,我采用的是token机制。
2.仓库管理
①出入库申请流程
参与出入库申请的角色有三个——发起申请的普通用户,审核申请的审核人,仓库验收的仓管员。
普通用户发起申请(制单)->审核人审核申请->相应仓管员验收货物->入库或出库
用户能发起三种类型的申请——出库,入库,转移
②出入库管理
1.出入库查询
用户可以查看出入库申请记录,同时也可以选择开始日期,仓库,材料名称等来进行自己期望的查询,并可以点击详情查看详细信息。
注:这里表格的数据并不是一次全部给前端,而是前端根据自己的需求分页获取
也可以对记录进行 (批量)删除,
也可以进行排序筛选
同时也支持对当前数据进行导出打印
2.可视化展示
出入库的信息将会以图表的信息展现出来,可以给管理者一个更直观的感受
③库存管理
1.库存查询
这个和上面类似,不过这里因为字段较少就没有设置详情,同时为了库存安全,这里并未提供增删改功能,只能供用户查询信息。
不过也提供筛选、导出和打印的功能
2.可视化展示
④其他管理
这里我只写了仓库增加和材料类型增加
1.材料种类添加
2.仓库创建