资源描述
基于移动端的实验室资产管理系统设计与实现
摘 要
本文主要从南京师范大学泰州学院实验室资产管理入手,利用软件工程思想为指导,为解决独立学院实验室资产管理效率问题而设计开发的面向高校管理员的实验室资产管理系统。针对该系统,界面采用HTML嵌套CSS和Javascript,同时引入Bootstrap框架作动态及分页展示。利用PHP+MySQL技术做资产管理系统的后台,并利用Ajax和jQuery技术做前后端数据的交互。通过微信公众号API调用与本系统的结合来实现便携可用性。为了实现预定效果,确保系统的易用性,管理后台基于B/S模式,打开浏览器即可随时访问。通过分析和研究独立学院现有的实验室资产管理模式,搭建基于ThinkPHP5框架,MVC结构的Web后台。本文先是简述校园信息化的趋势,阐述高校实验室资产管理创新的必要性和可行性,接着提出解决方案,详述实验室资产管理系统的设计思路和具体实现方法。同时结合设计过程中出现的问题说明开发需要注意的事项。程序设计章节详尽划分系统的功能模块,包括但不限于管理员登录及权限管理、教师及学生信息管理、实验室管理、公共资产管理、资讯及图片管理等功能。最后,对系统整体性能进行测试,展示实际测试和运行效果,分析不足和展望。
关键词:实验室资产管理;PHP;MVC;ThinkPHP5;微信公众号
Design and implementation of lab asset management system based on mobile terminal
Abstract
Using the idea of Software Engineering as the guide, this paper starts with Laboratory asset management in Nanjing Normal University Taizhou College. So a laboratory asset management system for university administrators is designed and developed to solve the problem of asset management in independent Institute. In view of the system, the user's interface adopts CSS and Javascript inside of HTML. At the same time, I have introduced Bootstrap for dynamic and paging display. I have created a system code with the application of PHP and connected the Web application to a MySQL database. Using Ajax and jQuery to do the interaction of front and end data. Achieve portable availability through the combination of WeChat API and the system. In order to achieve the desired effect and ensure the usability of the system,this asset management based on B/S mode. Open the browser and you can access it at any time. By analyzing and studying the existing laboratory asset management mode of Independent Institute, the Web application is built based on ThinkPHP5 framework and MVC structure. This article is a brief introduction to the trend of campus information first,and then Then the solution is put forward and the necessity and feasibility of asset management innovation in laboratories are expounded. At the same time, combined with the problems in the design process, the matters needing attention in the development are explained. The programming section detailedly divides the functional modules of the system. Including but not limited to the function of Administrator login and authority management, Information management of teachers and students, Laboratory management, Public asset management, Information and picture management. Testing the overall performance of the system. At last, after reviewed this article, summarizes and analyzes the shortcomings of the system and follow-up study needed.
Keywords: PHP; lab asset management; ThinkPHP5; MVC; Wechat
目 录
摘 要 I
Abstract II
第一章 引言 1
1.1 课题研究背景 1
1.2 课题研究现状 1
1.2.1 国外研究现状 1
1.2.2 国内研究现状 1
1.3 课题研究内容 2
1.4 论文结构安排 2
第二章 开发工具及技术介绍 4
2.1 Atom介绍 4
2.2 PHPStudy介绍 5
2.3 ThinkPHP5的应用 6
2.4 数据库的应用 6
2.4.1 MySQL的介绍 6
2.4.2 MySQL数据库的特点 7
2.5 Bootstrap的应用 7
2.6 微信公众号的应用 7
2.7 本章小结 8
第三章 系统总体设计 9
3.1 系统需求分析 9
3.2 系统结构设计 10
3.3 数据库设计 11
3.4 功能设计 17
3.5 本章小结 18
第四章 系统实现 19
4.1 Web端界面的实现 19
4.1.1 登录页面的实现 19
4.1.2 管理页面的实现 20
4.2 微信公众号的实现 20
4.3 Web端后台管理实现 21
4.3.1 前端登录页面的实现 21
4.3.2 前端管理页面的实现 22
4.3.3 后端登录页面的实现 25
4.3.4 后端管理页面的实现 26
4.4 数据库连接的实现 28
4.5 本章小结 31
第五章 系统测试 32
5.1 系统测试环境 32
5.2 系统的功能测试 32
5.3 适配性测试 33
5.4 本章小结 34
第六章 总结与展望 35
6.1 总结 35
6.2 展望 35
结束语 36
参考文献 37
本科期间所获奖项 38
致 谢 39
第一章 引言
本章主要是讲述课题所研究的背景并利用校园信息化,管理信息化的趋势来引出课题所要研究的内容。结合国内外的研究现状在交代背景的同时为本文所使用到的知识和技术做下铺垫。
1.1 课题研究背景
实验室是高校科研和教学的又一个重要基地,实验室资产是任何一所实验室不可缺少的部分,它对于学校的管理者、教师和学生来说都至关重要[7]。
随着互联网+和移动互联向着深层次发展,与计算机、各种智能手机、各种便携设备的普及不合拍的事实是:高等学校的一些部门的管理方式,信息更新方式似乎停留在上个世纪。仍借助于纸质表格申报加人工逐个数据统计汇总,实验室的资产管理就位列其中。
为了让高校信息化发展速度能够与计算机信息技术逐步匹配和校园网建设的日趋成熟,运用先进的资产管理系统加上相关移动端,对高校实验室的资产进行科学而规范的管理来实现实验室的网络化以及提高实验室资产管理效益的需求。
1.2 课题研究现状
1.2.1 国外研究现状
国外关于实验室方面的管理系统起步于上世纪八十年代,经过了近40年的发展,已经趋于成熟,目前国外有许多高水平院校会基于自身的情况设计个性化的管理系统。这些软件系统功能较完善,灵活性强,框架清晰合理,同时还拥有可扩展性和包容性。一些公司也会为缺少技术水平的专业性院校提供实验室方面的管理软件外包,比较著名的软件厂商有:美国的动态数据库公司和STARLIMS公司,英国的Lab Ware公司等。
1.2.2 国内研究现状
随着国内计算机的普及,移动互联网的飞速发展,国内的一些大型院校和一些软件公司也根据自身情况或使用习惯开发研制符合国人使用的实验室和资产管理系统。
在物联网的带动下,一些实验室已经出现通过手持RFID设备扫描贴有标签或者QR码的来实现实验室资产的录入。但是有些系统的针对性仍然不高,还存在着一些问题:功能单一,灵活性不足和可扩展性不好。进而导致了资产管理系统软件的使用率低的问题。可以见得,实验室资产管理系统要在能够为用户提供充足的信息、快捷的查询手段和存储手段的同时还要具有针对性和灵活性。
鉴于我国的4G网络规模—全球最大,伴随活跃度数亿记的通讯软件微信的崛起,以及微信公众平台开发水平的不断提高,奠定了开发针对性强、灵活度高、跨平台性的实验室资产管理系统的基础。
1.3 课题研究内容
实验室是高校的重要组成成分之一,本文通过分析传统的实验资产管理方法,结合实际情况,给出对应的系统设计模型[8]。设计基于ThinkPHP5(下文简称TP5)框架下,MVC结构即Model、View、Controller的实验室资产管理方案。本节将分析相较于传统管理方式,基于移动端的实验室资产管理系统的优点以及课题研究的内容。
Web后台加上移动端的配合使得用户的使用体验提升不少,更符合当下的生活、管理方式。其次数据库技术的运用使得信息存储安全性得以保障,相较于以往拥有了更大的信息量,还使得查找检索更加便利,更利于资产的入库及后期的报废处理。微信端的加入保证该系统具有良好的实时性,管理员可以及时获取并更新实验室使用状态。最后还加入一些传统管理方式下不易管理的勤工俭学学生管理、实验室简讯通知以及实验室资产的实拍图片管理。
基于移动端的实验室资产管理系统可以说是“应运而生”,拓展传统管理方式的信息量的同时使得便利性得以极大提升。
本设计实现的想法还来自于作者之前参与的一个竞赛设计—《基于微信公众号的请假系统》。该系统的实现以及设计思想在一定程度上影响着我对实验室资产管理系统的功能需求分析和功能模块布局的考虑,本文还将在下一章节详尽说明系统结构和开发相关问题。
1.4 论文结构安排
本文的第一章,前两节主要讲的是课题的研究背景和所要研究的内容,计算机学科的发展和微信公众平台的出现奠定了技术基础。结合国内外的研究现状,分析了开发本系统的可行性的同时提出原管理方式所没有的创新点。本节将是对全文的结构进行的简介。
第二章主要对所用到的开发调试工具进行介绍,和同时会用到开发技术。这一章节将分别介绍到Atom,PHPStudy,ThinkPHP5框架,Bootstrap框架,MySQL数据库管理系统和微信公众号的应用。
第三章讲的是系统的整体设计分析,根据软件工程的思想,由需求分析到设计过程,经历从系统的实现方案到确定系统的结构过程。最终以实现所要求功能为目标。
第四章则主要展示系统的运行效果图及实现其的代码,功能模块包括:管理员的登录与验证,管理员管理,教师与学生的管理,实验室的管理及其与教师学生的关联,资讯及图片管理,还有公共资产管理等,还会阐述微信公众号模块,由从开发者模式原理图的分析到微信公众号的开发步骤。
第五章主要进行系统测试,由系统搭建的服务器环境描述到系统所实现功能的测试。此外还阐述系统在适配性方面的表现。
第六章是总结与展望章节,主要是对本系统进行总结,展望未来,畅想人工智能带来的便利。
第二章 开发工具及技术介绍
作者开发的这个系统的后台采用的是PHP+MySQL的黄金组合,常规的HTML+CSS+Javascript用于渲染页面,Bootstrap及一些用于动态展示的JS文件放置在lib目录下,上述的这些页面和后台代码均使用Atom编辑器编辑。数据库用的是MySQL,操作工具使用Navicat Premium for MySQL及adminer,线上部署阶段的数据库操作采用phpMyAdmin。微信接入所用的开发工具为微信Web开发者工具。
2.1 Atom介绍
Atom是GitHub发布的基于Electron框架的一款跨平台的文本编辑器。是基于Javascript技术和Web基础而构建的编译器,本系统开发所使用的版本为较成熟的Atom 1.25。Atom拥有像Sublime Text一样开启即用的特性,同样拥有高亮语法提醒和Snippets功能。而Atom的还有着另外一个像Vim和Emacs这样的编辑器一样的功能:它能给予开发者充分的订制。重要的是它在Editplus这样极具扩展限制性和Vim、Emacs这类学习曲线困难之间取得平衡,兼具实用易用性和可扩展性。Atom的搜索替换功能和树状文件目录结构也为开发带来极大的便利,Atom编辑器的页面如图2.1所示。
图2.1 Atom编辑器界面展示
Atom最令人喜爱的地方也是最主要的特性恐怕是它拥有的众多的功能性插件,Atom编辑器的骨架是一个核心仅有不足两万行js代码的骨架,并不是由C/Cpp等软件开发语言编写,它的几乎所有有意义的功能均由包来实现。实际上Atom称其为Package而不是Plugin(插件)。所以作为通用的编辑器,Atom是通过绝对的插件化来适应各种不同类型的开发需求。有一点和Sublime Text类似,在HTML/CSS/Javascript开发方面,配上前端包Emmet,事半功倍。个人最喜欢的插件activate-power-mode也值得一用,炫酷的特效让人爱上编程。Atom还同样支持的几个重要的功能,譬如到文件的任何地方、多行选择与编辑、文件自由切换、命令面板等等。而选择Atom的原因则是其开源跨平台,与Sublime Text相比没有恼人的收费提醒,与PHP Storm相比体积更小,开启更迅捷。
当然,Atom还存在着这样那样的一些不足。过于插件化的Atom在打开大文件时容易崩溃,在编辑代码量庞大的文件时卡顿明显,对于使用非固态硬盘的用户不是很友好。
2.2 PHPStudy介绍
PHPStudy是一款集成了PHP调试环境的程序包。该程序集成了常用于开发的PHP 5到PHP 7各版本、最新版本的apache和MySQL管理工具等。MySQL管理工具包括phpMyAdmin、MySQL-Font、MySQL的导入导出等。
在个人计算机(Windows环境)上配置PHP学习、开发所需要的环境本是一件繁琐的事情。从更改server/apache的配置文件httpd.conf,到修改PHP配置文件php.ini(由php.development复制重命名得到),再到本机域名的配置文件hosts的修改。如果是依次独立安装查找真的非常麻烦,从我个人实际体验感受来讲非常糟糕。而PHPStudy实现的是一次安装,方便配置,一键开启apache和MySQL。PHPStudy集成环境页面如图2.2所示,需要说明,本系统的本地开发环境为Windows+apache+MySQL+PHP,服务器部署环境为Linux+Nginx+MySQL+PHP。
图2.2 PHPStudy集成环境页面
此外,PHPStudy在查看phpinfo显示PHP服务器的配置信息,修改PHP开启的服务和函数等方面较手动去除屏蔽也极具优势。对于本次开发来讲,为了平衡计算机软硬件负载,保证搭建开发调试运行环境保证系统需求的正确性,经测试PHPStudy满足要求。
2.3 ThinkPHP5的应用
ThinkPHP是为敏捷Web应用开发、免费开源、简单的面向对象的轻量级PHP开发框架。TP5在秉承了历史版本ThinkPHP3的大道至简的开发思想同时也吸收了国外优秀框架Laravel的一些设计思想。TP5遵循apache2开源,且为中国公司所开发,相对Laravel和Yii而言有更容易阅读和理解的文档和代码,更容易接触到的、供查阅的官方手册。
基于TP5开发的本系统,采用经典的MVC结构:即M-Model,用于获取数据库中对应数据表数据;V-View,用于渲染页面;C-Controller,用于渲染模版和返回输出。该结构下的文件看起来更加直观,而且前后端代码分离,不再是PHP代码嵌套在HTML中,对于新手来说可谓友好。Model和Controller用于存放PHP代码,View文件夹下存放各个模版的HTML文件以及作为公共部分的相应文件。
2.4 数据库的应用
数据库技术最早始于上世纪六七十年代,简单的讲,同数学概念中的集合类似,它是数据的集合。随着信息技术的不断去陈出新,信息量的几何式增长,传统文件系统在可查询精度、存储耐久度和查询效率方面显然愈加不能跟上现代生活节奏。
所以在数据管理方面,本系统采用了数据库技术,再结合数据库技术使用的实际情况,使用场景和应用规模,选择了MySQL。在PHP Web应用方面,MySQL可能是最好用的关系型数据库管理系统。开发过程中,系统本地环境采用的就是PHP+MySQL+Apache的组合,线上安装MariaDB来方便MySQL的配置。
2.4.1 MySQL的介绍
MySQL是甲骨文收购芬兰公司后,纳为旗下的一款开源的关系型数据库管理系统。所谓关系数据库,就是将数据集合到不同的数据表中,再将数据表放于同一数据库下,在缩小数据库体积的同时提升了速度并表现的更为灵活。
在介绍PHPStudy时提到了MySQL管理工具,但事实上在开发本系统的过程中只是线上部署阶段用到了phpMyAdmin这个网页版数据库管理工具。在本地开发过程中,phpMyAdmin整体表现较好,但因为时不时出现的卡顿及断线重连问题导致的体验不友好,做到平衡本机软硬件资源的情况下选择了Navicat Premium for MySQL。
2.4.2 MySQL数据库的特点
在用MVC结构获取数据库数据的过程中出现了不可期的错误,在调试错误的过程中学到了许多有用的东西。下面结合MySQL手册归纳一下它的一些特点。第一,它使用C和Cpp编写,采用完全多线程,能够合理的利用CPU,安装的过程注意安装方式的选择。第二,灵活的权限机制和密码机制保障安全,密码传输采用加密保护。第三,完全开源性和经久的可靠性。第四,MySQL总体拥有成本较低,适合中小型网站。第五,与SQL Server和Oracle相比体积更小。
2.5 Bootstrap的应用
Bootstrap是由Twitter设计师开发,一直作为GitHub的热门开源项目,是目前最受欢迎的HTML、CSS和JS框架。简易、直观的特点让前端开发变得简单和迅捷。Bootstrap的CSS基于预处理脚本-Less和Sass,其中的Media Query这一CSS媒体查询在适配各种移动端智能设备起着重要作用。Bootstrap中文社区还提供详细的文档以供从源码实现jQuery插件、HTML元素、HTML和CSS组件的订制。
2.6 微信公众号的应用
作为一种跨平台的及时通讯软件,微信自相继登录iOS、Android平台后就不断丰富着自己的连接方式,从早期的人与人连接,到现在的人与人、人与服务内容的连接。
人与服务内容的连接是微信深入到我们生活方式的进化,是它连接一切的一个措施。微信公众号的推出正是为丰富服务内容而来,而如何丰富内容就用到微信公众平台的开发。
所谓的微信公众号开发,其实就是使用计算机编程语言编写业务代码来处理用户的数据请求,涉及到自定义服务器和微信服务器之间的通信。微信公众平台开发使得微信更像一个浏览器,而微信公众号就是它的网站。
考虑到两大主流移动操作系统在软件方面的互不兼容,引入微信公众号来打破“壁垒”,实现跨平台的支持。由于认证资料受限,本系统只是做到简单的微信公众号的界面和回复功能。
2.7 本章小结
本章主要对开发本系统所用到的开发工具,包括Atom编辑器、PHPStudy集成工具包、ThinkPHP5框架、Bootstrap框架、微信公众号的应用、数据库的应用以及所用到的数据库MySQL及其特点进行介绍。
第三章 系统总体设计
自计算机诞生,到科技、互联网飞速发展的今天,随着计算机的普及,及其自身的几何式发展,IT技术正在由浅入深的改变着我们的生活方式,从高精尖应用到平民化发展,占领着我们的世界。本文重点不是讨论互联网发展的利弊,而要表明:传统的,或者说是陈旧的管理方式已经越来越跟不上时代的发展,不再符合责任人的生产生活方式,有些方面的管理手段需要变革。
3.1 系统需求分析
通过近期在综合实验楼的观察和学校官网资产处模块的浏览,发现纸质申请表格和各项实验室资产管理事项复杂繁琐。浪费人力、时间、空间的同时致使管理效率跟不上节奏。
为符合当今生活方式,顺应社会发展,让计算机管理方案替代人工表格式,本人决定设计一个基于微信公众号的实验室资产管理系统来进一步减轻实验室管理人员的工作量,给实验室相关人员以相当的便利。为此,出现一个搭建在Web端的,同时采用微信接入的后台管理系统变的很有必要。在兼顾管理效果和系统性能的同时,实现便携的实验室资产管理来满足管理员需求,确定在问题定义阶段之初系统的规模和目标,正确的肯定,错误的改正。
为节省时间,避免人力、软硬件资源的浪费,在设计系统之前,必须寻找问题的可行性解决方案。考虑如何解决这些可行性问题并没有确切回答“系统是什么,必须做什么”这一问题,所以需求分析的任务就是完整的、具体的对系统提出要求。
对于本系统,根据软件工程的思想,采用快速原型法(Rapid Prototyping)来先构造一个简单的原型,用较小的代价来搭建系统模型。应用原型系统的搭建在少许借鉴传统的生命周期方法后扩大了需求分析,在后续的初步设计和详细设计阶段不断的逐步深入以求精细,检查、测试、修改,不断的完善扩充得到目标系统所具备的特性[3]。
从技术可行性的角度来研究,本系统设计采用Web端较受欢迎的PHP语言,搭配国内技术人员开发的TP5框架。考虑到规模问题,数据库使用体积大小合适的MySQL数据库管理系统,采用B/S开发模式的实验室资产管理系统可以使用现有的技术加以实现。
而就经济可行性的角度,相较传统的管理方式,本系统是信息交换机制的变化,节约的人力、时间空间和资源足以抵消它的开发、部署和维护成本。
在数据库设计方面,考虑到所面对的目标管理人员为学校在职教师、教员和数据库系统的适用性、并发性及负载,并未设计针对学生用户的登录模块。所以,设计的数据库系统包含了管理员信息,角色信息,权限信息。此外还包括了实验室信息,实验室还关联到教师负责人和勤工俭学学生,他们是一对一的关系或者是一对多的关系。考虑到现实中的领导问题,本系统允许一个超级管理员身份存在,用于对管理的约束,和行使一些管理员无法拥有的权限,并进行一些资讯的发布和数据库数据的删改。
需求分析是软件工程中一个不可或缺的过程,这个过程是进行系统详细设计的关键,在确定了分析需求之后,才能根据需求找到并给出解决方案。需求分析还是软件系统设计的基础,不经过需求分析而设计的系统对于解决问题本身而言也是白做无用功。而对于进行本系统开发的设计人员来讲,除了对计算机编程的熟悉,数据库知识的储备和对实际情况的调研也尤为重要。
3.2 系统结构设计
像前面提到的那样,实验室资产管理系统是实验室信息系统组成的重要成分,也是方便管理员获取实验室资产信息和管理资产实用功能系统。高校实验室是组成高校教学重要一环,也是实施科研项目必不可少的阵地[7]。开发本系统是为了实现更高效率的实验室资产管理,减少冗余,砍掉不必要的工作量。同时微信公众号的接入也为系统的实时性,高效率提供了保障。本系统的概要设计概括如下。
MySQL数据库的应用,实现了管理员信息管理、实验室管理、教师负责人及勤工俭学人员信息管理、公共资产处的管理。其中对公共资产处的管理还包括了构成实验室资产管理重要组成部分的固定资产管理和低值易耗品管理以及报废审批。实现了对于数据的增删改查操作。
微信公众平台的引入,随着智能手机的普及,功能机不再是大众的第一选择,还有微信的强势崛起成为如今应用市场及时通讯软件领域的霸主,使得采用微信公众号接入本系统以提高管理方式效率成为可能。而且微信公众号的使用跨越了平台限制,无论是Android用户还是iOS用户,安装微信,关注微信公众号即可。
以上两点是从实际情况出发,考虑到管理方式和使用者管理需求,并以此为出发点针对系统的概要设计。得益于TP5的MVC结构,本系统的开发采用的是前后端代码分离,前端采用的是Ajax方式提交表单数据,Json格式进行数据交互,优点是按模块开发,便于调试和管理。用Ajax的提交方法只有一个对象参数,该对象参数有5个常用属性:提交类型、处理程序的url、提交的数据、数据的类型、请求成功后对返回数据的处理。
实验室资产管理系统
管理
员管理
管理员编辑
管理员添加
资讯
图片信息
资讯图片编辑
资讯图片查看
实验室管理
实验室信息编辑
实 验 室 添 加
公共资产处
资产报废审批
固定资产编辑
低值易耗品编辑
负责人管理
教师信息编辑
勤工俭学人编辑
图3.1 结构关系图
3.3 数据库设计
考虑到数据库的体积和系统运行性能,本系统的数据库设计采用的是一个数据库包含多个数据表的方式。在一个数据库的基础之上建立了如下几个数据表,详情如下:
分类表:分类ID,分类名称,分类顺序,父ID。如表3.1所示:
表3.1 category(分类)信息表
序号
列名
数据类型
长度
主键
允许空
说明
1
id
int
10
是
否
主键
2
cate_name
varchar
64
否
分类名称
3
cate_order
int
8
是
分类顺序
4
fid
int
10
是
父id
用户表:管理员ID,管理员名称,密码,管理员角色,管理员创建时间,管理员状态,是否允许删除。其中,管理员ID作为主键,管理员密码采用MD5加密。如表3.2所示:
表3.2 user(管理员)信息表
序号
列名
数据类型
长度
主键
允许空
说明
1
id
int
11
是
否
主键
2
name
varchar
50
否
用户名
3
password
varchar
32
否
密码
4
email
varchar
64
是
电子邮箱
5
role
tinyint
2
是
管理员角色
6
status
int
2
是
状态
7
create_time
int
11
是
创建时间
8
update_time
int
11
是
更新时间
9
delete_time
int
11
是
删除时间
10
login_time
int
11
是
登录时间
11
login_count
int
11
否
登录次数
实验室表:实验室ID,实验室名称,实验室状态,实验室价值,投入时间,删除时间,关联外键。其中,设计数据表的关联外键这一字段是为模板复制考虑。如表3.3所示:
表3.3 grade(实验室)信息表
序号
列名
数据类型
长度
主键
允许空
说明
1
id
int
11
是
否
主键
2
name
varchar
64
否
实验室名
3
length
varchar
20
是
管理阶段
4
price
int
11
是
实验室价值
5
status
int
11
是
实验室状态
6
create_time
int
11
是
创建时间
7
update_time
int
11
是
更新时间
8
delete_time
int
11
是
删除时间
9
is_delete
int
11
是
允许删除
10
teacher_id
int
11
是
关联外键
11
student_id
int
11
是
关联外键
12
article_id
int
11
是
关联外键
学生表:学生ID,学生姓名,负责实验室,联系方式,入学时间,学生状态,关联外键。设计数据库时,考虑到现实情况,学生与实验室之间采用的是一对多的关系。如表3.4所示:
表3.4 student(学生)信息表
序号
列名
数据类型
长度
主键
允许空
说明
1
id
int
11
是
否
主键
2
name
varchar
32
否
姓名
3
sex
tinyint
4
是
性别
4
age
tinyint
4
是
年龄
5
mobile
varchar
12
是
手机号
6
status
int
11
是
当前状态
7
start_time
int
11
是
入学时间
8
create_time
int
11
是
创建时间
9
update_time
int
11
是
更新时间
10
delete_time
int
11
是
删除时间
11
is_delete
int
11
是
允许删除
12
grade_id
int
11
是
关联外键
审批表:所要审批的资产ID,所要审批的资产名称,入库时间,出库时间,所要审批的状态。如表3.5所示:
表3.5 audit(审核)信息表
序号
列名
数据类型
长度
主键
允许空
说明
1
id
int
32
是
否
主键
2
name
varchar
64
否
审核物品名称
3
update_time
int
11
是
更新时间
4
create_time
int
11
是
创建时间
5
delete_time
int
11
是
删除时间
6
status
int
5
是
审核状态
7
is_delete
int
5
是
允许删除
8
type
int
11
是
审核类型
9
author
varchar
15
是
发起审核人
10
server_name
varchar
24
是
服务器名
教师表:教师ID,教师名,教师学历,联系方式,任职学校,教师状态,关联外键。如表3.6所示:
表3.6 teacher(教师)信息表
序号
列名
数据类型
长度
主键
允许空
说明
1
id
int
11
是
否
主键
2
name
varchar
32
否
姓名
3
degree
varchar
30
是
学历
4
mobile
varchar
20
是
手机号
5
school
varchar
32
是
所属单位
6
hiredate
int
11
是
入职时间
7
create_time
int
11
是
创建时间
8
update_time
int
11
是
更新时间
9
delete_time
int
11
是
删除标志
10
is_delete
int
11
是
允许删除
11
status
int
11
是
1启用0禁用
12
grade_id
int
11
是
外键
资讯表:资讯ID,资讯标题,资讯内容,发布人,发布日期,允许删除,关联外键。如表3.7所示
表3.7 article(资讯)信息表
序号
列名
数据类型
长度
主键
允许空
说明
1
id
int
11
是
否
资讯ID
2
title
varchar
32
否
用户名
3
content
varchar
255
是
资讯内容
4
grade_id
int
11
是
关联外键
5
role
text
0
是
发布人
6
status
int
2
是
状态
7
create_time
int
15
是
创建时间
8
update_time
int
11
是
更新时间
9
delete_time
int
11
是
删除时间
10
is_delete
int
2
是
允许删除
低值易耗品表:易耗品ID,易耗品名称,易耗品单价,易耗品状态,入库日期,标签。如表3.8所示:
表3.8 consum(低值易耗品)信息表
序号
列名
数据类型
长度
主键
允许空
说明
1
id
int
12
是
否
主键 编号
2
consum_name
varchar
50
否
设备名称
3
specs
varchar
55
是
设备规格
4
acquired_date
int
12
是
购置日期
5
number
int
8
是
数量
6
price
int
10
是
单价
7
total
int
11
是
总价
8
status
int
5
是
状态
9
create_time
int
10
是
创建时间
10
update_time
int
10
是
更新时间
11
delete_time
int
10
是
删除时间
12
stock_time
int
10
是
入库时间
13
is_delete
int
2
是
允许删除
图片表:图片ID,图片名称,图片描述,上传时间,允许删除,删除时间,关联外键。如表3.9所示:
表3.9 picture(图
展开阅读全文