一.修改记录
创建时间： 2017/10/25 版本： 1.0

二.项目说明
	1.架构概述
		1).现有模块 :  用户模块(包括用户设备共享模块)  设备信息模块 OTA模块 Token验证模块
		2).整体说明 :                                  OTA模块
		                                                 ↗ 
														 
			用户注册 -> 用户登录  -> Token验证模块 

				 ↓		          ↓                     ↘
			 用户模块       用户模块             设备信息模块
		3).各个模块明细说明
			1. 用户模块: 
				用户信息处理模块：用户基本操作
					用户注册：包括获取验证码，然后通过验证注册用户
					用户登录：返回Token信息给后续验证用户安全性
					用户信息完善：修改完善用户个人信息
					用户修改密码：修改用户密码
					用户重置密码：重置密码（使用邮箱进行重置）
					显示用户信息：显示本用户当前信息
					显示所有用户信息：只有管理员与超级管理员可以调用，显示所有的用户信息
					用户启用、禁用：只有管理员与超级管理员可以调用，启用、禁用设备用户
				
				用户设备共享模块：共享用户设备
					搜索用户：通过用户的信息搜索用户自身另外的账号
					共享用户设备：主用户把设备共享给搜索到用户（可以共享一台设备，也可以全部等设备）
					取消用户设备：主用户取消之前共享给其他账号的设备（可以取消共享一台设备，也可以全部等设备）
					
			2.Token验证模块：
				token获取：在登录时调用获取Token
				token验证：解密access token，验证有效期，如果有效可以继续访问接口，无效返回错误信息
				token更新：解密refresh token，验证有效性，如果有效并且没有过期就更新access token，然后返回access token，或者返回错误信息
				token错误信息：通过上面三个接口返回的错误码，解析出来token错误信息，并返回提示用户
				
			3.设备信息模块
				添加设备信息：添加新设备信息
				查询设备信息：查询本账户名下所有设备信息
				修改设备信息：修改本账户名下的相应设备信息
				删除设备信息：删除本账户名下相应设备信息
				显示所有用户设备信息：只有管理员与超级管理员可以调用，显示所有的用户名下所有设备信息
			
			4.OTA模块
				升级文件上传：上传升级文件（根据文件名称保存到相应的文件夹下）
				添加版本信息：把上传的升级文件信息更新到数据库表里面
				获取最新版本信息：通过输入要查询的设备信息，返回查询到该设备最新版本
				获取最新版本url链接：通过输入要查询的设备信息，返回查询到该设备升级文件的下载链接
				下载升级文件：通过获取的url下载升级文件

			5.批量处理模块
				设备信息批量导入：2种内容格式txt格式, 2种调用Excel文件导入方式
				
			6.权限模块
				模型设计：用户、角色、权限，用户 → 多对多 ← 角色， 用户 → 多对多 ← 权限，角色 → 多对多 ← 权限
			7.日志模块
			    中间件middle入口进行统计入库，利用nginx自带module进行统计（更精确)
			8.APP版本信息模块
			    对应app版本更新，检测版本详细信息
			9.语言包模块
			    所有响应信息增加中英适配
			10.


django常用命令
python3 mangage.py makemigrations
python3 manage.py migrate --fake
python3 manage.py sqlmigrate
python3 manage.py runserver 0.0.0.0:8222
