APP下载

基于微信小程序的高校设备管理系统设计与实现

2023-03-20林仙土

无线互联科技 2023年1期
关键词:盘点界面程序

林仙土

(台州科技职业学院,浙江 台州 318020)

0 引言

高校设备管理是学校日常工作中一项非常重要的工作,是学校教学和科研等工作的物质保障,对设备资产的有效管理已成为学校新时期发展的重要因素。在“双高”建设背景下,高水平实验室和设备信息化管理更是“双高”建设不可或缺的重要组成部分。高校的仪器设备,尤其是实验室里的教科研设备,具有种类多、数量大、转移频繁等特点,加上职业教育对实验操作的需求递增,使得设备管理的难度不断加大[1]。一方面,传统的PC资产管理系统在查询、盘点、上报等操作时仍存在诸多不便,导致账目信息反映不及时、人工成本较高等问题;另一方面,闲置的设备没有及时发现,造成资源浪费,不利于学校发展。

随着移动互联网技术和智能手机的不断发展,移动端应用在各行各业逐步发挥重要作用。微信小程序是一种不需要下载安装即可使用的应用,具有触手可及的特点,用户只要扫一扫或搜一下即可打开应用,出色的用户体验使其成为移动端应用的最佳选择[2-3]。本文提出基于微信小程序开发设备管理系统的移动端应用,通过设计出色的交互功能,使设备管理更方便、更及时,有效地提高工作效率,提升实验室管理的效能,具有广阔的应用前景。

1 系统架构

本系统包含微信小程序、服务器端程序和数据同步程序3部分。微信小程序基于微信平台底层支撑,使用微信开发者工具开发设计界面,可跨平台运行在手机等移动设备上[4]。服务器端程序采用跨平台语言Python开发,基于Django框架,包括两个部分:(1)数据库接口。实现与数据库、微信小程序之间的数据交互。(2)后台管理界面。实现设备信息、上报信息、盘点信息和用户信息等数据的统一管理。数据同步程序采用Navicat实现本地数据库与云数据库的数据表自动同步。

2 程序技术方法

2.1 小程序技术

微信小程序是一种新形态的轻量级应用,基于微信平台支撑,其新颖的开放能力方便开发者快速搭建一个应用。微信小程序是基于MINA框架,框架分视图层和逻辑层。视图层用来渲染和展示页面,使用描述语言WXML和样式WXSS。逻辑层则用来处理业务逻辑,使用JavaScript逻辑层语言,再加上json配置文件,构筑了整个小程序框架。框架的核心是一个响应的数据绑定系统,当在逻辑层修改数据后,视图层就会做相应的更新[5]。MINA框架封装了文件系统、任务管理、网络通信等基础功能,对上层提供一整套API,让开发者方便快速地构建具有原生App体验的应用。这里摘取了盘点开始代码如下:

startPd:function (){

……

data:JSON.stringify({

dwid:this.data.dwid,

stime:Date.now(),

pdrid:wx.getStorageSync("username")

}),

success:function (t){

a.setData({

pdid:t.data.data

})

a.ddChange();

wx.setStorageSync(’pdid’,a.data.pdid)

……

2.2 数据库设计与同步

本系统采用了当前主流的关系型数据库MySQL存储数据。该数据库是开源软件,具有强大的数据处理功能。提供多线程和多语言支持,并能运行在不同的系统平台上。针对不同的功能模块,本数据库设计了多张数据表,比如:设备信息表、单位信息表、盘点汇总表、盘点详情表、上报情况表、用户信息表、用户权限表等。本系统数据库的部分数据来自本地资产管理系统的数据库,为实现数据的定期同步,采用数据库管理工具Navicat设置批处理作业,进行定时数据传输。在数据传输前还需对数据进行调整,筛选有用数据,以用户数据为例:

INSERT into user(username,password,dwid,name,phone,usergroup)SELECT distinct us.[用户名],us.[密码],us.[单位编号],sr.[人员名],us.[电话],us.[用户权限] FROM USER us INNER JOIN S_RYK sr on us.[用户名]=sr.[人员编号]。

2.3 后端程序设计

Python是一种跨平台的计算机程序设计语言,有高效率的高层数据结构,其核心特点是简洁、直接、清晰,允许引入C/C++的扩展,使得它在Web开发、网页爬虫、数据分析、自动化运维、机器学习等多领域得到了广泛应用。服务端程序主要处理业务逻辑和数据的交互,根据小程序端的数据请求,访问MySQL数据库并返回数据,同时对设备盘点记录和上报信息进行存储。盘点过程的代码部分如下:

def pddetail(id):

pandian=db.session.query(Unit.dwname,Pddetail.Deviceid,Device.yqname,Pddetail.hasPd,

Pddetail.location).join(Unit,Unit.dwid==Device.dwid).join(Pddetail,Pddetail.Devicei

d==Device.yqid).filter(Pddetail.pdid == id).all()

jsonData = []

for row in pandian:

result = {}

result[’dwname’] = row[0]

result[’yqid’] = row[1]

result[’yqname’] = row[2]

result[’hasPd’] = row[3]

result[’location’] = row[4]

jsonData.append(result)

jsondatar = json.dumps(jsonData,cls=MyEncoder,ensure_ascii=False)

return jsondatar

3 系统功能实现

设备管理系统包括4个模块:用户管理、设备查询、设备盘点和设备上报。

3.1 用户管理

用户通过微信公众号找到小程序,在登录界面输入用户名和密码,经验证后即进入小程序主界面。系统管理员可登录后台管理,对用户信息、用户权限和用户密码进行设置。用户权限主要分:普通用户、部门管理员、单位管理员、单位领导、系统管理员5类角色,分别拥有不同的功能模块权限。

3.2 设备查询

该模块提供用户多条件查询设备信息,用户在小程序应用里输入领用单位、设备编号、设备名称或领用人名称等条件进行筛选查询,也可以通过扫设备条形码直接查询信息。此外,系统管理员可通过后台对设备信息进行维护。

3.3 设备盘点

该模块为资产管理员提供了便捷的盘点手段,可以选择按照所在单位(实验室)、领用人、存放地等条件进行盘点,盘点时对设备的位置状态进行选择,盘点过的设备使用灰底色标识,如位置不对时可填写正确位置。盘点结束后,管理员可登录后台查看盘点详情,根据不同标识进行筛选,并能导出记录。

3.4 设备上报

该模块包含设备报修、设备保养、设备闲置、可疑设备上报等事件的处理。设备管理员通过填写申请单、上传图片或文件等方式详细报送设备处理事件,资产管理部门工作人员登录系统进行审核,从而保留了设备异常事件的历史记录。设备闲置事件的上报能便于资产管理部门及时了解设备的使用状况,通过调拨将闲置设备用于其他需要的地方。针对日常管理过程中有些无法核实身份或者被丢弃在室外的设备,用户可通过系统报送该设备信息给资产管理部门,便于后续及时处理。

该系统已完成测试上线,以管理员账号登录,系统小程序端界面如图1—4所示。

图1 查询界面

图2 上报界面

图3 盘点界面

图4 个人界面

4 结语

针对高校现有设备管理系统存在的不足和实际工作需要,本文介绍了一种基于微信小程序的设备管理系统设计与实现,充分利用小程序的便捷灵活,实现在移动端完成设备查询、盘点、报修、调剂等功能。该系统操作简单方便,有助于提升高校设备管理从粗放型向精细化转变,能有效提高设备管理部门的工作效率,实现仪器设备的动态管理,充分发挥仪器设备的使用效益。

猜你喜欢

盘点界面程序
睁眼瞎盘点
国企党委前置研究的“四个界面”
试论我国未决羁押程序的立法完善
基于FANUC PICTURE的虚拟轴坐标显示界面开发方法研究
“程序猿”的生活什么样
英国与欧盟正式启动“离婚”程序程序
人机交互界面发展趋势研究
创卫暗访程序有待改进
2014 年终·盘点
手机界面中图形符号的发展趋向