基于微信小程序的个人事务管理系统设计与实现

ThispapermainlydiscusseshowtouseNode.jsframeworktodevelopthedesignandimplementationofapersonaltransactionmanagementsystembasedonwechatsmallprogram.Thissystemwillstrictlyfollowthesoftwaredevelopmentprocessforeachstageofthework,usingB/Sstructureandobject-orientedprogrammingideaforprojectdevelopment.Intheintroduction,theauthorwilldiscussthecurrentbackgroundofthepersonaltransactionmanagementsystemofwechatsmallprogramandthepurposeofthesystemdevelopment.Thesubsequentchapterswillanalyzeanddesignvariousstagesofthesysteminstrictaccordancewiththesoftwaredevelopmentprocess.

ThemainusersofthepersonaltransactionmanagementsystemofWeChatsmallprogramaredividedintoadministratorsandordinaryusers.Thefunctionsofthesysteminclude:backgroundhomepage,systemusers,transactionnotemanagement,consumptionrecordmanagement,systemmanagement,resourcemanagement,etc.Thispersonaltransactionmanagementsystemhasasimpleandclearuserinterface,allowinguserstofindtheirownfunctionsataglance.Afterlogin,userscanseetheirhomepage,newsinformation,my,transactionnotes,consumptionrecordsandothermainfunctionmodules.Thesemodulesallowtheusertorecordsomeimportantinformationorideasforeasyviewingandeditingatanytime.Theuseofthissystemcanrealizetheinformationofwechatsmallprogrampersonaltransactionmanagementsystemmanagement,canfacilitateadministratorsformoreconvenientandquickmanagement,canimprovethemanagementefficiencyofwechatsmallprogrampersonaltransactionmanagementsystem.

Keywords:NODE.JSframework;B/Sstructure;WeChatsmallprogrampersonalaffairsmanagementsystem

目录

在国外他们的信息技术的发展是我国的许多倍,从1946年诞生在美国的世界上第一台计算机开始,国外的信息技术就一直在飞速地发展,一些计算机应用软件也纷纷出现,软件技术也一直在不断完善和更新[3]。软件行业早已遍布各个地方。

这次编写的论文包含了6个部分的内容,具体内容如下:

第三部分系统分析:对系统的可行性分析以及对所有功能需求进行详细的分析,来查看该系统是否具有开发的可能。

第四部分系统设计:功能模块设计和数据库设计这两部分内容都有专门的表格和图片表示。

第五部分系统实现:进行系统主要功能模块的界面展示。

第六部分系统测试:测试系统的每一个功能是否能够正常运行,是否可以满足人们的需求。

2开发技术介绍

该系统主要是采用现在比较流行的B/S结构、Node.js框架以及MySQL数据库来做系统开发,最后对系统的总体设计、数据库设计、功能模块设计、系统页面制作、系统程序定制和调试测试等做出详细的规划。

2.1B/S结构

2.2Node.js框架介绍

Node.js是一个异步的世界,官方API支持的都是callback形式的异步编程模型,这会带来许多问题,例如:1、callback嵌套问题;2、异步函数中可能同步调用callback返回数据,带来不一致性。为了解决以上问题Koa出现了。

koa是由Express原班人马打造的,致力于成为一个更小、更富有表现力、更健壮的Web框架。使用koa编写web应用,可以免除重复繁琐的回调函数嵌套,并极大地提升错误处理的效率。koa不在内核方法中绑定任何中间件,它仅仅提供了一个轻量优雅的函数库,使得编写Web应用变得得心应手。开发思路和express差不多,最大的特点就是可以避免异步嵌套。

阿里内部就在使用Koa框架,并在Koa基础上面做了一些扩展和封装。并且基于koa开发了一个开源框架egg。

首先,借助promise和generator的能力,丢掉了callback,完美解决异步组合问题和异步异常捕获问题。

其次,koa把express中内置的router、view等功能都移除了,使得框架本身更轻量化。该设计有如下好处:1、把express各种中间件移植到koa是很简单的一件事;2、express中内置的功能件未必好,比如view,想添加自己的viewengine进入得做较深层次的hack,又比如router,它的效率不是最好的。koa没有内置这些,给了开发者很大的自由度,开发者都能自由发挥制作出更精细更专业的中间件。

机型选择:小程序以智能手机的屏幕尺寸为设计标准,进行切图。

预览界面:写好视图布局后点击编译,用来刷新视图界面。

控制台:方便调试打印输出信息。

上传代码:上传到腾讯服务器,提交审核必经步骤。上传代码时可以填写版本号和备注信息。

资源文件:一般可以在资源文件进行对应项目的文件目录的断点调试。

显示远程调试:手机端和PC端开发工具联调对用户而言是非常实用的。

本地数据存储:显示的是本地存储的数据。

视图调试:标组件以子父层级结构呈现,方便调试。

在系统开发之初要进行系统可行分析,这样做的目的就是使用最小成本解决最大问题,一旦程序开发满足用户需要,带来的好处也是很多的。下面我们将从技术上、操作上、经济上等方面来考虑这个系统到底值不值得开发。

3.1.1技术可行性

3.1.2经济可行性

我在设计该系统的时候主要是从节约成本出发,然后进行具体的系统的设计,在系统的设计过程中由于采用的所有工具以及技术支持全部都是免费的,因此不需要有任何的成本就可以进行该系统的设计。所用到的所有资源都是免费的,只要有网络就可以进行下载使用,不需要支付相应的费用,因此该项目在经济方面是完全可以实行的。

3.1.3操作可行性

本人自己就是学生,程序开发经验不足,在界面设计上面不会设计太复杂,要讲究简单好看,操作上要方便,不能让用户觉得不流畅。用户一旦进入操作界面,界面上就会有相应提示,跟着操作提示就可以找到对应的功能操作模块,对于用户来说免培训就能使用。

(1)系统效率:页面时问应该在3秒以内,最长不能超过4秒,并支持至少10000人同时在线所有系统。

(2)界面简洁清晰:系统界面要求简单明了,容易操作,符合用户操作习惯。

(4)易学性:该系统在操作上必须简单好上手,没有很多复杂的操作,只需要简单的进行学习就能操作该系统。

图3-1管理员用例图

(2)普通用户:首页、新闻资讯、我的(基本信息、事务备注、消费记录)等功能。普通用户例如图3-2所示。

图3-2普通用户用例图

3.4.2注册流程

未有账号的用户可进入注册界面进行注册操作,用户注册流程图如图3-5所示。

图3-5注册流程图

3.4.3添加信息流程

用户在添加信息时,信息编号自动生成,系统会对添加的信息进行验证,验证通过则添加至数据库,添加信息成功,反之添加失败。添加信息流程如图3-6所示。

图3-6添加信息流程图

3.4.4删除信息流程

用户可选择要删除的信息进行信息删除操作,在删除信息时系统提示是否确定删除信息,是则删除信息成功,系统数据库将信息进行删除。删除信息流程图如图3-7所示。

图3-7删除信息流程图

图4-1系统工作原理图

整个系统是由多个功能模块组合而成的,要将所有的功能模块都一一列举出来,然后进行逐个的功能设计,使得每一个模块都有相对应的功能设计,然后进行系统整体的设计。

图4-2系统功能结构图

4.3.2添加信息模块顺序图

图4-4添加信息顺序图

一个好的数据库可以关系到程序开发的优劣,数据库设计离不开表结构的设计,还有表与表之间的联系,以及系统开发需要设计的数据表内容等信息。在进行数据库设计期间,要结合实际情况来对数据库进行针对性的开发设计[12]。

4.4.1数据库E-R图设计

图4-5个人事务管理系统实体图

将数据库概念设计的E-R图转换为关系数据库。在关系数据库中,数据关系由数据表组成,但是表的结构表现在表的字段上。

表access_token(登陆访问时长)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

int

10

0

N

Y

临时访问牌ID

2

varchar

64

临时访问牌

3

text

65535

4

最大寿命:默认2小时

5

timestamp

19

CURRENT_TIMESTAMP

6

7

用户编号:

mediumint

8

125

点赞数

255

9

11

longtext

2147483647

12

封面图

13

smallint

分类ID:[0,10000]

100

显示顺序:[0,1000]决定分类显示的先后顺序

16

分类名称:[2,16]

上级分类ID:[0,32767]

描述:[0,255]描述该分类的作用

分类图标:

外链地址:[0,255]如果该分类是跳转到其他网站的情况下,就在该URL上设置

表auth(用户权限管理)

用户组:

模块名:

表名:

页面标题:

路由路径:

32

位置:

_blank

跳转方式:

tinyint

是否可增加:

是否可删除:

是否可修改:

是否可查看:

添加字段:

14

修改字段:

15

查询字段:

500

跨表导航名称:

17

跨表导航:

18

配置:

20

内容:

昵称:

头像地址:[0,255]

表consumption_records(消费记录)

消费记录ID

普通用户

用户姓名

date

消费日期

消费标题

消费金额

消费内容

datetime

表hits(用户点击)

点赞ID:

点赞人:

表praise(点赞)

bit

点赞状态:1为点赞,0已取消

表regular_users(普通用户)

普通用户ID

用户性别

用户地址

已通过

审核状态

用户ID

表slides(轮播图)

轮播图ID:

标题:

链接:

轮播图:

点击量:

表transaction_notes(事务备注)

事务备注ID

事务标题

事务类型

事务内容

办理进度

完成情况

表upload(文件上传)

上传ID

文件名

访问路径

文件路径

显示顺序

父级ID

文件夹

文件类型

账户状态:[0,10](1可用|2异常|3已冻结|4已注销)

所在用户组:[0,32767]决定用户身份和权限

手机认证:[0,1](0未认证|1审核中|2已认证)

昵称:[0,16]

针对获取用户信息字段

会员等级

double

0.00

会员折扣

表user_group(用户组:用于用户前端身份和鉴权)

用户组ID:[0,8388607]

显示顺序:[0,1000]

名称:[0,16]

描述:[0,255]描述该用户组的特点或权限范围

注册位置:

5系统详细设计

5.1用户功能模块

用户注册流程图如下图所示。如图5-2所示。

图5-2用户注册界面图

图5-4新闻资讯界面图

我的,用户可以在此页面查看个人基本信息、事务备注、消费记录等操作,如图5-5所示。

图5-5我的界面图

事务备注,用户可以在此页面查看或者添加事务备注信息。,如图5-6所示。

图5-6事务备注界面图

5.2管理员功能模块

系统用户,在系统用户管理页面中可以查看管理员和普通用户的资料,并对其进行增删改查的操作,如图5-7所示。

图5-7系统用户管理界面图

事务备注管理,在事务备注管理页面中可以查看所有的事务备注信息,还可以根据需要进行添加、删除、修改等操作,如图5-8所示。

图5-8事务备注管理界面图

资源管理,在资源管理页面中可以查看新闻资讯、资讯分类,并对其进行增删改查的操作,如图5-9所示。

图5-9资源管理界面图

一个系统设计好后,就会进入测试阶段,测试的目标是检验设计好的网站是否可以正常无误的运行,尽可能的发现网站的问题,已使后期网站投入使用后网站尽少出错。

系统测试主要是判断系统是否可以正常运行,功能模块是否可以实现操作。程序代码中是否有错误出现。测试程序是开发过程中的一个主要问题。就算系统完成的再好,再进行程序测试时也会也会发现一个重来没有被发现的错误信息。

对测试计划的把握是测试方案的重中之重。所有的技术难点应该都被包含在这个测试计划之中。而且我们要保证能与目标形成一致性,以至于能够测试出一些主要存在的错误和一些错误的漏洞。可以完美解决这些问题就只有白盒测试或者黑盒测试[14]。

构造测试是白盒测试的另一个名字,了解与分析程序的结构以及性能功用的,从而我们可以得到最终想要的结果并且观察出是不是每一条程序都能得到。

性能测试是黑盒测试别称,程序本身的运作通过程序的进程来观察,主要是看一下程序是不是能够像我们预期的目标那样发展,看一看我们的程序最终能不能完整的得到我们最后想要的功能和储存想得到的数据,到最后看一下我们的这个程序完整性能不能达到要求。

(1)模块测试

单元测试就是模块测试,顾名思义就是测试每个模块所承担的功能是否能够实现,这个测试就是为了找出代码在实际的设计运转中某一些小的程序所出现的偏差,很好地改正这些错误,就说明我们模块测试进行很成功过。

(2)集成测试

集成测试就是对系统的测试以及对他子系统的一些性能测试,他检查的事系统的包装程序信息。找出其中的问题。他的优势主要有以下这几点:

软件耗费较少。

可以提前发现端口的错误。

更好的地位系统中错误的位置。

从底部往上面进行的方案针对于偏下层的结构,而中间的结构就采用折中的方法。

(3)验收测试

终于到了结尾性的工作了。就是为了给用户看一下我们的系统功能是否达到了预期的效果。我采用了性能测试也就是黑盒测试对系统进行测试。

其结果是分别是:

有一定的差异在用户的需求。

再者就是结果与之差不了多少。

到了最后了,我们发现的问题都是与用户的需求存在一定的关联。

测试的目标:输入账号密码以及验证码后系统会自动进行验证是否正确。

所用的环境:Windows10和IE浏览器。

输入信息:用户名、密码。

步骤:

情况

用户名输入

密码输入

期望结果

(1)

15546219225

1244566

提示“用户名或者密码错误,或账号未经审核”

(2)

aaaaa

123456

提示“用户名或密码错误,或者账号未经审核”

(3)

hangguowei

登陆成功

总体说来,软件通过测试。

[1]申安珍.“五心”领航助力服务更强——推进陕西机关事务系统党建工作高质量发展[J].中国机关后勤,2024,(03):32-35.

[3]王嵩立,荆一楠,何震瀛,等.支持混合事务和分析处理的数据库管理系统综述[J].软件学报,2024,35(01):405-429.

[4]王家,龙冬梅.基于云原生架构的高校数字化教学事务平台设计与研究[J].现代信息科技,2023,7(14):12-14+19.

[5]赖康顺.智慧养老云平台中事务管理系统集群化模型的设计与实现[D].北京邮电大学,2023.

[6]黄纯悦,彭起,张拂晓,等.多副本分布式事务处理关键技术及典型数据库系统综述[J].软件学报,2024,35(01):455-480.

[7]庄骐,陈克,陆志林.上海市社区事务受理系统设计和应用[J].微型电脑应用,2023,39(05):21-24.

[8]李沛牧.基于CSP的分布式事务系统的建模与验证[D].华东师范大学,2023.

[9]李旗,基于国产软硬件平台的分布式事务型数据库.四川省,成都虚谷伟业科技有限公司,2022-12-30.

[10]段莹.基于“互联网+”的学生事务管理信息化平台建设[J].办公自动化,2022,27(22):15-17.

[11]石凌峰.基于B/S架构的企业法律事务平台研发及应用[J].软件,2022,43(08):167-169.

[12]王基桥.智慧养老云平台中分布式事务管理模块的设计与实现[D].北京邮电大学,2022.

[13]马楚博.以信息化建设提升机关事务管理效能[J].中国机关后勤,2022,(02):30-31.

[14]张相荣,机关事务数字化平台.陕西省,西安汇丰软件科技有限公司,2022-01-01.

[15]许燊晖,郑荣纬,杨毕辉,等.基于移动互联网平台的医疗事务审批系统的设计与实现[J].中国数字医学,2021,16(10):76-78.

[16]徐晴,王加年.微服务架构的学生综合事务平台构建[J].办公自动化,2020,25(23):11-12+40.

[17]曹伟.移动互联平台在高校教学运行和教学事务管理中的社群式应用[J].教育观察,2020,9(33):73-76.

[18]PrabawaniB,HadiPS,FisherRM,etal.SocioeconomicperspectiveofagroforestrydevelopmentinCentralJava[J].EnvironmentalandSustainabilityIndicators,2024,22100354-.

[19]XiaoZ,AliY,XinW,etal.SportsWorkStrategyofCollegeCounselorsBasedonMySQLDatabaseBigDataAnalysis[J].InternationalJournalofInformationTechnologyandWebEngineering(IJITWE),2023,18(1):1-14.

[20]YangY.DesignandImplementationofStudentInformationManagementSystemBasedonSpringboot[J].AdvancesinComputer,SignalsandSystems,2022,6(6):

转眼间,大学生用户活便已经接近尾声,人面对着离别与结束,总是充满着不舍与茫然,我亦如此,仍记得那年秋天,我迫不及待的提前一天到了学校,面对学校巍峨的大门,我心里充满了期待:这里,就是我新生活的起点吗?那天,阳光明媚,学校的欢迎仪式很热烈,我面对着一个个对着我微笑的同学,仿佛一缕缕阳光透过胸口照进了我心里,同时,在那天我认识可爱的室友,我们携手共同度过了这难忘的两年。如今,我望着这篇论文的致谢,不禁又要问自己:现在,我们就要说再见了吗?

THE END
1.8个数据库设计典型实例PowerBuilder进行信息系统开发的基本知识。下面将通过一个个实例来说明如何利用 PowerBuilder作为数据库前端开发工具,开发出具有使用价值的管理信息系统。 人事管理系统实例是本书的第一个例子。因此对于实例开发过程中所涉及到的一些知 识会有重点讲述。 随着计算机技术的飞速发展,计算机在企业管理中应用的普及,利用计算机...http://www.360doc.com/document/14/0214/20/15804455_352536542.shtml
1.一个简单数据库设计例子一个简单数据库设计例子 一个曾经做过的简单的管理系统中数据库设计的例子,包括设计表、ER图、建模、脚本. +++++++++++++++++++++++++++++++++++++++++++++++ 项目信息 Project Name:Book Manager System DB:MySQL5.5 DB Name:db_library Tables...https://blog.csdn.net/Jerry_1126/article/details/44337973
2.sqlserver架构设计mob649e8162842c的技术博客在开始设计之前,了解一些基本要素是非常重要的。这些要素包括: 表:数据存储的基本单元。 字段:表中的列,每个字段都有数据类型。 索引:用于提高查询性能。 关系:表与表之间的联系。 约束:用于限制数据的输入(如主键、外键、唯一约束等)。 三、设计一个简单的数据库 ...https://blog.51cto.com/u_16175492/12561233
3.AlphaFold3来了!全面预测蛋白质与所有生命分子相互作用及结构...(d) VMD:一个分子可视化程序,用于使用 3D 图形和内置脚本显示、动 态化和分析大型生物分子系统。 1.4 蛋白质设计的常用评估指标:NSR、RMSD、GDT、能量评分函数、可 溶性、与靶标之间的结合强度和特异性 3. 蛋白质数据库介绍 1.1 一级蛋白质序列数据库:UniProtKB ...https://cloud.tencent.com/developer/article/2437597
4.MySQL数据库实验实现简单数据库应用系统设计Mysql这篇文章主要介绍了MySQL数据库实验实现简单数据库应用系统设计,文章通过理解并能运用数据库设计的常见步骤来设计满足给定需求的概念模和关系数据模型展开详情,需要的朋友可以参考一下+ 目录 GPT4.0+Midjourney绘画+国内大模型 会员永久免费使用!【 如果你想靠AI翻身,你先需要一个靠谱的工具!】 观前提示:本篇内容为...https://www.jb51.net/article/252268.htm
5.蓝蓝高频面试之数据库系列第一期数据库基础20题前言[toc] 大家好,我是蓝蓝。数据库在国企,银行,研究所的面试过程中,是占比非常大的,也是及其可能被问的知识点,我将其分为四个部分,分为基础理论篇,事务篇,优化篇,大概一共100个题目,最后一部分是最高频的题目,大家加油哈,星球打卡时间为15天,完成打卡一定有https://m.nowcoder.com/discuss/353158849412669440
6.全国计算机二级考试哪个最简单全国计算机二级考试是全国计算机等级考试简称NCRE,是四个等级中的一个等级。包含语言程序设计,包括C、C++、Java、Visual Basic、WEB程序设计;数据库程序设计(包括VisualFoxPro、Access、MySql);MS office高级应用包括Word、EXCEL、PPT办公软件高级应用。计算机二级考试哪个最简单?下面百分网小编带大家一起来看看详细内容,希望...https://www.oh100.com/kaoshi/ncre2/tiku/482381.html
7.软件工程导论作业控制类:是用于对特定于一个或一些用例的控制行为建模的类。 实体类:是用来对必须存储的信息及关联行为建模的类。 5.6 按照设计模型的不同层次和功能,设计元素可以分哪些方面? 答:(1)体系结构元素;(2)构件级元素;(3)接口/界面元素:用户界面、构件接口、系统接口;(4)数据元素:数据库设计、数据结构设计;(5)部署...https://www.unjs.com/zuixinxiaoxi/ziliao/20170805000008_1416273.html
8.java毕业实习报告(精选11篇)在三个月里,所学知识的确有很多,java基础,数据库操作(oracle,mysql),SSH框架(hibernate,struts,spring),网页设计jsp技术等,总之学到了很多曾经陌生的技术。受益匪浅。 一、实习计划 7月10日:简单地了解公司的基本情况,进一步学习了java的基本知识。7月11日—7月13日:学习java相关的编程环境和运行环境的材料,准备...https://www.fwsir.com/Article/html/Article_20141119170516_283897.html
9.软件工程—精选习题集(含参考答案)总复习60道简答题因此,工程网络图是系统分析和系统设计的强有力的工具。19、动态联编答:动态联编指应用系统在运行过程中,当需要执行一个特定服务的时候,选择(或联编)实现该服务的适当算法的能力。20、系统流程图答:一个概括地描绘物理系统的传统工具,表达了数据在系统各部件之间流动的情况。https://www.jianshu.com/p/6875e17271d0
10.案例数据库设计9篇(全文)校企合作的此类实训项目中,进行数据库设计与实现所用知识、技术,基础来自于校内所学,但又远高于校内简单的数据库理论知识,是学生按软件工程流程做项目开发最重要的一个环节,数据库设计的好坏,直接影响后期软件开发和维护。 摘要:该文介绍了如何使用UML进行数据库设计。首先建立静态模型,然后根据映射策略将模型映射为数据...https://www.99xueshu.com/w/ikey3pf3ms57.html
11.什么是BI?企业数字化的规划和落地第三层,数据源层- 即BI的数据层,各个业务系统底层数据库的数据通过 ETL 的方式抽取到BI的数据仓库中完成 ETL 过程,建模分析等等,最终支撑到前端的可视化分析展现。 02、BI在企业IT信息化中的位置 这一点是所有企业如果规划要上BI项目的时候必须弄明白的:BI在IT信息化中到底处于一个什么样的位置?弄清楚定位是信息...https://maimai.cn/article/detail?fid=1778763808&efid=IIU4kC9omHSMNDd9brumRg
12.ASP.NETCore适用于.NET的开源Web框架.NET 是一个开发人员平台,由工具、编程语言、库组成,用于构建许多不同类型的应用程序。 ASP.NET Core 通过专门用于生成 web 应用的工具和库扩展了.NET 开发人员平台。 更深入发掘: 什么是 ASP.NET Core? 了解ASP.NET Core 通过我们的教程、视频课程和文档,了解 ASP.NET Core 提供的所有功能。 https://asp.net/
13.豆瓣967450 个成员 你来替我吃/用 27984 个成员 下班新生活计划 109315 个成员 再见爱人讨论组 2557 个成员 博士互助组---今天你毕业了吗 96234 个成员 法盲互助协会 149802 个成员 我又买鲜花啦 126005 个成员 人间情侣观察 203772 个成员 电影票房·资料库 49664...https://www.douban.com/
14.保障性理论基础在实施保障性分析的过程中,将收集的大量有关保障的数据与保障性分析记录(logistics support analysis record,LSAR),以一定的格式储存到电子计算机内,建立一个包括可靠性、维修性、测试性及各综合技术保障要素等信息在内的独立的保障性分析记录数据库,并在分析过程中不断地更新数据。该数据库用于装备综合技术保障和保障...https://mp.ofweek.com/im/a645693221836
15.积分商城数据库设计:构建一个完美的线上积分兑换平台(积分商城...随着互联网的发展,越来越多的企业开始在线上销售产品和服务。与此同时,也出现了越来越多的积分兑换平台,为消费者提供了更加便捷的积分兑换服务。然而,在构建一个完美的线上积分兑换平台的过程中,数据库设计是非常关键的。 本文将从以下三个方面来介绍积分商城数据库的设计: ...https://www.idc.net/help/150689/