首页 > 编程语言 >express二手车交易网站-计算机毕业设计源码45770

express二手车交易网站-计算机毕业设计源码45770

时间:2024-12-02 11:30:15浏览次数:14  
标签:varchar 毕业设计 二手车 express 用户 源码 64 车辆 界面

目  录

摘要

1 绪论

1.1研究背景

1.2研究意义

1.3论文结构与章节安排

2 二手车交易网站系统分析

2.1 可行性分析

2.1.1 技术可行性分析

2.1.2 经济可行性分析

2.1.3 法律可行性分析

2.2 系统功能分析

2.2.1 功能性分析

2.2.2 非功能性分析

2.3 系统用例分析

2.4 系统流程分析

2.4.1 数据流程

2.4.2 业务流程

2.5本章小结

3 二手车交易网站总体设计

3.1 系统功能模块设计

3.1.1整体功能模块设计

3.1.2用户模块设计

3.1.3车辆管理模块设计

3.1.4购买管理模块设计

3.2 数据库设计

3.2.1 数据库概念结构设计

3.3.2 数据库逻辑结构设计

3.4本章小结

4二手车交易网站详细设计与实现

4.1用户功能模块

4.1.1 前台首页界面

4.1.2 用户注册界面

4.1.3用户登录界面

4.1.4汽车资讯详情界面

4.1.5车辆信息详情界面

4.1.6购买界面

4.1.7用户帮拍详情界面

4.2管理员功能模块

4.2.1登录界面

4.2.2系统用户管理界面

4.2.3汽车车型管理界面

4.2.4车辆信息管理界面

4.2.5车辆购买管理界面

4.2.6资源管理界面

5系统测试

5.1 系统测试用例

5.2 系统测试结果

结论

参考文献

  

摘要

随着我国经济的飞速发展,人们的生活水平从衣食住行方面都得到了质的提高,尤其是汽车工业的发展,从之前的燃油车,再到现在的油电混合汽车、电动汽车,可以说发展速度是惊人的,在这20年的时间里发展迅速,汽车几乎进入到了每家每户,但是由于私家车数量的增多,更新换代下来的闲置汽车也在不断增多,导致了二手车的交易市场日常火爆,之前用户想要购置二手车都需要到二手车市场进行查看,有时候想要看同一价位的二手车要跑很多家,耗时费力,因此滋生了很多二手交易平台,比如58同城的二手模块、瓜子二手车交易网站等,用户在这些平台上都可以查看二手车辆,但是这些平台都采用的是C/C的交易方式,发布的用户都是个人,用户想要对比购买的时候,信息的查询量还是比较大,因此结合目前用户购买以及商家销售二手车方面的需求,设计了本二手车交易网站。

本二手车交易网站采用了nodejs语言,基于B/S结构以及运用了MYSQL数据库开发实现,在功能上分为会员用户和管理员两部分,满足了用户通过系统进行查看二手车,实现二手车的购买,管理员在后台对注册平台的用户进行管控,二手车辆信息进行上传,供前台用户浏览,处理用户提交的订单,功能比较完善,能够满足二手车在线交易的需求。

关键词:node.js;express;二手车交易网站 ;MySQL

Abstract

With the rapid development of our country's economy, people's living standards have been qualitatively improved in terms of clothing, food, housing, and transportation, especially in the development of the automotive industry. From the previous fuel vehicles to the current hybrid and electric vehicles, the development speed can be said to be astonishing. In the past 20 years, the development has been rapid, and cars have almost entered every household. However, due to the increase in the number of private cars, The number of idle cars that have been updated and replaced is constantly increasing, leading to a booming second-hand car trading market. Previously, users who wanted to purchase a second-hand car had to go to the second-hand car market to check. Sometimes, to see second-hand cars at the same price point, they had to go to many places, which was time-consuming and laborious. As a result, many second-hand trading platforms have emerged, such as the second-hand module in 58.com and the Guazi second-hand car trading platform, Users can view used vehicles on these platforms, but they all adopt a C/C transaction method. The users who publish are all individuals, and when users want to compare and purchase, the amount of information they need to query is still relatively large. Therefore, based on the current needs of users and merchants in the sales of used cars, this used car trading website has been designed.

This second-hand car trading website adopts Node.js language, based on B/S structure and developed using MYSQL database. It is divided into two parts in terms of functionality: member users and administrators. It meets the needs of users to view second-hand cars through the system and purchase second-hand cars. Administrators control the registration platform users in the backend, upload second-hand vehicle information for front-end users to browse, and process orders submitted by users, The functions are relatively complete and can meet the needs of online second-hand car transactions.

Keywords:Node.js; Express; Second hand car trading website; MySQL

1 绪论

1.1研究背景

由于人们生活水平的提高以及生活节奏的加快,很多用户都选择网上选购商品,尤其是从2020年疫情以来,线下的很多行业都收到了很大的冲击,比如服装、餐饮行业,大家都为了避免人口聚集而很少去实体店消费,导致实体经济不断萧条,与之对应的线上交易正如火如荼,目前大多数行业因为疫情或者发展需要都在逐步的将各自的业务投放到了网上,其中主要是以电商服务为主导的互联网平台。很多企业都开始实现网上购买、配送,目前比较火的美团、饿了么等都是将商品放到网上进行售卖,像目前如果主要致力于自己的二手车销售的商家,就要围绕网上二手车的交易而进行展开。通过互联网平台的赋能,能够给二手车交易提供智能化的服务,在为用户提供实质性便利的同时,提高自己的服务质量。所以二手车交易网站更加符合时下二手车行业的需求,更加能适应二手车行行业目前的竞争压力。该二手车交易网站以“互联网+”B2C服务为模式,在为用户提供在线自主选择二手车行进行购买服务的同时,可以帮助商家实现销量的突破,同样也可以为二手车行行业的智能化发展做出努力。

1.2研究意义

该二手车交易网站其研究的目的就是让传统的二手车信息查询、交易的方式转化为通过网页浏览二手车进行二手车购买的形式,解决了传统二手车查看、交易耗时耗力的问题,系统的具体研究意义如下:

(1)从商家的角度来说,利用计算机网页来实现一个新型的二手车交易网站,可以提高二手车商家之间的竞争力,为二手车商家开辟一条新的销售途径,有利于商家更加长远的发展。

(2)从消费者的角度来说,二手车交易网站的实现,能够给用户带来极大的便利,为用户提供一个更加优质的二手车交易网站,让用户在繁忙的工作、生活中,不用在进行到二手车市场选购,上网进入系统就可以选购自己喜欢的二手车,享受送货上门服务。

(3)对于整个二手车市场来说,能够整合二手车信息,将二手车信息透明化,给买家提供一个优质的、公平的、公正的二手车交易网站,规范二手车市场,促进二手车市场的发展。

1.3论文结构与章节安排

本文共分为六章,章节内容安排如下:

第一章为引言,此章节对所设计和实现的系统的研究背景、研究意义进行详细的论述以及说明,同时进行了论文整体框架的结构的简要介绍。

第二章为系统需求分析,章节所做的主要的工作是对系统进行了技术、经济和操作方面可行性的分析;对系统实行了总体功能的需求、用例分析。

第三章为系统的设计,主要是对系统的功能结构进行设计,并对系统数据库的概念结构以及物理结构的设计进行了分析。

第四章就是对系统的实现,根据系统功能的划分,分别的对系统所需要实现的前台客户功能和后台管理员功能进行了分析和说明。

第五章:系统测试。主要对系统的部分界面进行测试并对主要功能进行测试

第六章:总结。

2 二手车交易网站分析

系统需求分析是系统开发的一个关键环节,它在系统的设计和实现上起到了一个承上启下的位置。系统需求分析是对所需要做的系统进行一个需求的挖掘,如果分析的准确可以精准的解决现实中碰到的问题。如果分析不到位会影响后期系统的实现。一个系统的优秀程度需求分析也是占据了非常大的比例,如果需求分析不到位,后面的系统设计要实现就是一个偏离导航的设计。

2.1 可行性分析

系统可行行分析是对系统对系统可行性进行一个探讨。在探讨系统的可行性上我们主要从技术上的可行性和经济上的可行性以及法律层面的可行性上进行分析,如果三个层面度通过,我们则认为系统是比较可行的。

2.1.1 技术可行性分析

二手车交易网站设计与实现是一个基于Web的管理平台,我们在实现这个系统所采用的技术方案是基于node.js语言,express框架,MYSQL数据库,在大学的学习中这两门课程都已经学过,而且自己也用这些技术开发过小的项目,在平时的课程设计以及作业也经常用到node.js和MYSQL,在技术上实现自己的自主开发是可行的。

2.1.2 经济可行性分析

开发二手车交易网站并不需要投入太多,开发工具、服务器、数据库等,都可以通过网络搜索、下载、安装,只需要一台普通的计算机就可以完成操作,而且在系统功能规划上通过走访调查目前用户对二手车交易网站的需求,了解它们对系统具体实现的功能需求,然后进行设计开发,不存在任何开销,因此系统的开发在经济方面是可行的。

2.1.3 法律可行性分析

系统从法律层面上来没有对第三方有其他放有法律层面的问题,系统数据库采用的Mysql 开源社区数据库、框架采用的是开源的express。系统资讯和相关内容也是呵呵法律层面的。在源码的管理上采用git开源进行管理,所以在法律可行性上是成立的。

2.2 系统功能分析

2.2.1 功能性分析

二手车交易网站我划分为了会员用户管理模块和管理员模块这两大部分。

用户管理模块:

(1)用户注册登录:游客可以随时进入到系统中,对系统中的信息浏览,但是想要实现车辆购买等,就必须有这个系统的账号,如果没有账号的话,可以注册成用户进行相关的操作,同时用户还可以对个人信息以及操作的信息进行管控。

(2)通知公告:用户点击“通知公告”菜单显示管理员在后台发布的所有的通知公告信息,可以查看通知公告详情。

(3)汽车资讯:用户点击“汽车资讯”菜单显示所有的汽车资讯信息,可以按照条件进行汽车资讯的筛选或者输入关键词进行局部搜索,点击可以进入汽车资讯详细展示界面,在此界面用户可以收藏、点赞和评论。

(4)车辆信息:当用户点击“车辆信息”这一菜单按钮,会显示管理员在后台发布的所有的车辆信息,支持通过关键词对车辆信息进行搜索,选择需要的车辆信息点击可以进入到车辆信息详细的介绍界面,在详细界面可以查看到车辆信息的发布用户、会员、汽车车型、车辆品牌、车辆颜色等信息,同时可以进行购买、点赞、收藏等操作;

(5)购买:当用户在车辆信息详情界面想要进行购买,点击下方的“购买”按钮,就会跳转到购买信息填写界面,根据界面提示输入购买信息,点击“提交”按钮,购买就完成了;

(6)用户帮拍:用户可以查看用户帮拍信息支持通过搜索关键词的方式对用户帮拍进行查询,在查询到自己想要了解的用户帮拍的时候,可以进入查看详细的介绍。

(7)我的账户:用户点击“我的账户”可以对个人资料以及密码进行更新。

管理员管理模块:

(1)登录:管理员在后台可以输入用户名+密码进行登录,管理员的用户名和密码是在数据库中直接设定好的。

(2)系统用户:管理员可以对前台上注册过的用户信息进行管控,也可以对管理员信息进行管控。

(3)汽车车型管理:管理员点击“汽车车型”菜单可以对汽车车型进行增删改查。

(4)车辆品牌管理:管理员点击“车辆品牌”菜单可以对车辆品牌信息进行增删改查。

(5)车辆信息管理:管理员点击“车辆信息”菜单可以对车辆信息进行增删改查。

(6)车辆购买管理:管理员点击“车辆购买”菜单可以对车辆购买进行管控。

(7)用户帮拍管理:管理员点击“用户帮拍”菜单可以对用户帮拍信息进行增删改查。

8)系统管理:管理员点击“系统管理”菜单可以对首页展示的轮播图进行增删改查。

(9)资源管理:管理员点击“资源管理”菜单可以对其下汽车资讯和汽车资讯的分类进行增删改查。

(10)留言管理:管理员点击“通知公告”菜单可以查看到系统中的所有通知公告信息,对已经存在的通知公告,管理员可以修改,也可以添加新的通知公告或者删除通知公告。

2.2.2 非功能性分析

二手车交易网站的非功能性需求比如二手车交易网站的安全性怎么样,可靠性怎么样,性能怎么样,可拓展性怎么样等。具体可以表示在如下3-1表格中:

3-1二手车交易网站非功能需求表

安全性

主要指二手车交易网站数据库的安装,数据库的使用和密码的设定必须合乎规范。

可靠性

可靠性是指二手车交易网站能够按照用户提交的指示进行操作,经过测试,可靠性90%以上。

性能

性能是影响二手车交易网站占据市场的必要条件,所以性能最好要佳才好。

可扩展性

比如数据库预留多个属性,比如接口的使用等确保了系统的非功能性需求。

易用性

用户只要跟着二手车交易网站的页面展示内容进行操作,就可以了。

可维护性

二手车交易网站开发的可维护性是非常重要的,经过测试,可维护性没有问题

2.3 系统用例分析

二手车交易网站的完整UML用例图分别是图2-1和图2-2。

图2-1就是会员用户角色的用例展示。

图2-1 二手车交易网站会员用户角色用例图

图2-2就是管理员角色的用例展示。

图2-2 二手车交易网站管理员角色用例图

2.4 系统流程分析

2.4.1 数据流程

开发二手车交易网站最主要的一个目的就是实现用户对车辆的在线购买,图2-4就是系统的数据流图。

图2-3车辆购买操作展开图

2.4.2 业务流程

分析完二手车交易网站的数据流,那么接下来我们来看系统的业务流程,图2-4就是业务流程图:

图2-4业务流程图

2.5本章小结

本章主要通过对二手车交易网站的可行性分析、功能需求分析、系统用例分析、系统流程分析,确定整个二手车交易网站要实现的功能。同时也为二手车交易网站的代码实现和测试提供了标准。

3 二手车交易网站总体设计

本章主要讨论的内容包括二手车交易网站的功能模块设计、数据库系统设计。

3.1 系统功能模块设计

3.1.1整体功能模块设计

在上一章节中主要对系统的功能性需求和非功能性需求进行分析,并且根据需求分析了本二手车交易网站中的用例。那么接下来就要开始对本二手车交易网站的架构、主要功能和数据库开始进行设计。二手车交易网站根据前面章节的需求分析得出,其总体设计模块图如图3-1所示。

图3-1 二手车交易网站功能模块图

3.1.2用户模块设计

本系统的用户包括管理员和用户两种用户模块的功能基本是相同的,用户比管理员多了一个注册功能,所以以用户模块的结构图为例进行分析,用户模块结构图为例进行分析,如下图:

图3-2用户模块结构图

3.1.3车辆管理模块设计

二手车交易网站是中需要存储不少车辆信息,其模块功能结构,具体的结构图如下:

图3-3车辆信息模块结构图

3.2.4购买管理模块设计

二手车交易网站最重要的一个功能就是购买,其模块功能结构,具体的结构图如下:

图3-4购买模块结构图

3.2 数据库设计

数据库设计一般包括需求分析、概念模型设计、数据库表建立三大过程,其中需求分析前面章节已经阐述,概念模型设计有概念模型和逻辑结构设计两部分。

3.2.1 数据库概念结构设计

下面是整个二手车交易网站中主要的数据库表总E-R实体关系图。

图3-5二手车交易网站总E-R关系图

3.3.2 数据库逻辑结构设计

通过上一小节中二手车交易网站中总E-R关系图上得出一共需要创建很多个数据表。在此我主要罗列几个主要的数据库表结构设计。

表auction_information (竞拍信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

auction_information_id

int

10

0

N

Y

竞拍信息ID

2

vehicle_number

varchar

64

0

Y

N

车辆编号

3

member_users

int

10

0

Y

N

0

会员用户

4

car_models

varchar

64

0

Y

N

汽车车型

5

vehicle_name

varchar

64

0

Y

N

车辆名称

6

vehicle_brand

varchar

64

0

Y

N

车辆品牌

7

vehicle_color

varchar

64

0

Y

N

车辆颜色

8

starting_price

varchar

64

0

Y

N

起拍价格

9

bidding_price

varchar

64

0

Y

N

竞拍价格

10

total_bidding_price

varchar

64

0

Y

N

竞拍总价

11

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

12

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表car_models (汽车车型)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

car_models_id

int

10

0

N

Y

汽车车型ID

2

car_models

varchar

64

0

Y

N

汽车车型

3

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表comment (评论)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

comment_id

int

10

0

N

Y

评论ID:

2

user_id

int

10

0

N

N

0

评论人ID:

3

reply_to_id

int

10

0

N

N

0

回复评论ID:空为0

4

content

longtext

2147483647

0

Y

N

内容:

5

nickname

varchar

255

0

Y

N

昵称:

6

avatar

varchar

255

0

Y

N

头像地址:[0,255]

7

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

9

source_table

varchar

255

0

Y

N

来源表:

10

source_field

varchar

255

0

Y

N

来源字段:

11

source_id

int

10

0

N

N

0

来源ID:

表member_users (会员用户)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

member_users_id

int

10

0

N

Y

会员用户ID

2

member_name

varchar

64

0

Y

N

会员姓名

3

member_gender

varchar

64

0

Y

N

会员性别

4

member_phone_number

varchar

64

0

Y

N

会员电话

5

examine_state

varchar

16

0

N

N

已通过

审核状态

6

user_id

int

10

0

N

N

0

用户ID

7

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

8

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表notice (公告)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

notice_id

mediumint

8

0

N

Y

公告id:

2

title

varchar

125

0

N

N

标题:

3

content

longtext

2147483647

0

Y

N

正文:

4

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

5

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

表order_information (订单信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

order_information_id

int

10

0

N

Y

订单信息ID

2

member_users

int

10

0

Y

N

0

会员用户

3

vehicle_number

varchar

64

0

Y

N

车辆编号

4

car_models

varchar

64

0

Y

N

汽车车型

5

vehicle_name

varchar

64

0

Y

N

车辆名称

6

vehicle_brand

varchar

64

0

Y

N

车辆品牌

7

vehicle_color

varchar

64

0

Y

N

车辆颜色

8

starting_price

varchar

64

0

Y

N

起拍价格

9

bidding_price

varchar

64

0

Y

N

竞拍价格

10

total_bidding_price

varchar

64

0

Y

N

竞拍总价

11

pay_state

varchar

16

0

N

N

未支付

支付状态

12

pay_type

varchar

16

0

Y

N

支付类型: 微信、支付宝、网银

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表praise (点赞)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

praise_id

int

10

0

N

Y

点赞ID:

2

user_id

int

10

0

N

N

0

点赞人:

3

create_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

创建时间:

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间:

5

source_table

varchar

255

0

Y

N

来源表:

6

source_field

varchar

255

0

Y

N

来源字段:

7

source_id

int

10

0

N

N

0

来源ID:

8

status

bit

1

0

N

N

1

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

表user_assistance_in_taking_photos (用户帮拍)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

user_assistance_in_taking_photos_id

int

10

0

N

Y

用户帮拍ID

2

vehicle_number

varchar

64

0

Y

N

车辆编号

3

car_models

varchar

64

0

Y

N

汽车车型

4

vehicle_name

varchar

64

0

Y

N

车辆名称

5

vehicle_images

varchar

255

0

Y

N

车辆图片

6

vehicle_brand

varchar

64

0

Y

N

车辆品牌

7

starting_price

int

10

0

Y

N

0

起拍价格

8

vehicle_color

varchar

64

0

Y

N

车辆颜色

9

parameter_configuration

text

65535

0

Y

N

参数配置

10

hits

int

10

0

N

N

0

点击数

11

praise_len

int

10

0

N

N

0

点赞数

12

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

13

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表user_helps_to_buy (用户帮买)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

user_helps_to_buy_id

int

10

0

N

Y

用户帮买ID

2

member_users

int

10

0

Y

N

0

会员用户

3

member_name

varchar

64

0

Y

N

会员姓名

4

car_models

varchar

64

0

Y

N

汽车车型

5

vehicle_name

varchar

64

0

Y

N

车辆名称

6

vehicle_brand

varchar

64

0

Y

N

车辆品牌

7

vehicle_color

varchar

64

0

Y

N

车辆颜色

8

ideal_price

int

10

0

Y

N

0

理想价格

9

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

10

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表vehicle_brand (车辆品牌)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

vehicle_brand_id

int

10

0

N

Y

车辆品牌ID

2

vehicle_brand

varchar

64

0

Y

N

车辆品牌

3

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

4

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表vehicle_information (车辆信息)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

vehicle_information_id

int

10

0

N

Y

车辆信息ID

2

publish_users

int

10

0

Y

N

0

发布用户

3

vehicle_number

varchar

64

0

Y

N

车辆编号

4

car_models

varchar

64

0

Y

N

汽车车型

5

vehicle_name

varchar

64

0

Y

N

车辆名称

6

vehicle_images

varchar

255

0

Y

N

车辆图片

7

vehicle_brand

varchar

64

0

Y

N

车辆品牌

8

selling_price

varchar

64

0

Y

N

售卖价格

9

vehicle_color

varchar

64

0

Y

N

车辆颜色

10

parameter_configuration

text

65535

0

Y

N

参数配置

11

hits

int

10

0

N

N

0

点击数

12

praise_len

int

10

0

N

N

0

点赞数

13

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

14

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

表vehicle_purchase (车辆购买)

编号

名称

数据类型

长度

小数位

允许空值

主键

默认值

说明

1

vehicle_purchase_id

int

10

0

N

Y

车辆购买ID

2

publish_users

int

10

0

Y

N

0

发布用户

3

vehicle_number

varchar

64

0

Y

N

车辆编号

4

car_models

varchar

64

0

Y

N

汽车车型

5

vehicle_name

varchar

64

0

Y

N

车辆名称

6

vehicle_brand

varchar

64

0

Y

N

车辆品牌

7

vehicle_color

varchar

64

0

Y

N

车辆颜色

8

selling_price

varchar

64

0

Y

N

售卖价格

9

purchasing_users

int

10

0

Y

N

0

购买用户

10

pay_state

varchar

16

0

N

N

未支付

支付状态

11

pay_type

varchar

16

0

Y

N

支付类型: 微信、支付宝、网银

12

create_time

datetime

19

0

N

N

CURRENT_TIMESTAMP

创建时间

13

update_time

timestamp

19

0

N

N

CURRENT_TIMESTAMP

更新时间

3.4本章小结

整个二手车交易网站的需求分析主要对系统总体架构以及功能模块的设计,通过建立E-R模型和数据库逻辑系统设计完成了数据库系统设计。

4 二手车交易网站详细设计与实现

二手车交易网站的详细设计与实现主要是根据前面的二手车交易网站的需求分析和二手车交易网站的总体设计来设计页面并实现业务逻辑。主要从二手车交易网站界面实现、业务逻辑实现这两部分进行介绍。

4.1用户功能模块

4.1.1 前台首页界面

当进入二手车交易网站的时候,系统以上中下的布局进行展示,首先映入眼帘的是系统的导航栏,下面是轮播图,其主界面展示如下图4-1所示。

图4-1 前台首页界面图

4.1.2 用户注册界面

二手车交易网站的游客可以进行注册登录,当用户右上角“注册”按钮的时候,当填写上自己的账号+密码+确认密码+昵称+邮箱+手机号等后再点击“注册”按钮后将会先验证输入的有没有空数据,再次验证密码和确认密码是否是一样的,最后验证输入的账户名和数据库表中已经注册的账户名是否重复,只有都验证没问题后即可注册成功。其用注册界面展示如下图4-2所示。

图4-2注册界面图

注册逻辑代码如下:

Register.prototype.index = async function(req,res) {

var group_list = await $.services["user_group"].get_list({}, Object.assign({}, this.config));

return await res.render(this.config.tpl + "index.html", {

group_list

});

};

Register.prototype.api = async function(req) {

var user = $.services.user;

var body = req.body;

var username = body.username;

var obj = await user.get_obj({

username

});

if (obj) {

return {

error: {

code: 70000,

message: "账户名已存在",

},

};

} else {

var password = md5(body.password);

var nickname = body.nickname;

var user_group = body.user_group;

var email = body.email;

var email_state= body.hasOwnProperty('email_state') ? body.email_state : 0;

var phone = body.phone;

var phone_state= body.hasOwnProperty('phone_state') ? body.phone_state : 0;

var bl_reg = await user.add({

username,

password,

nickname,

user_group,

email,

email_state,

phone,

phone_state

});

if (bl_reg) {

return {

result: "注册成功"

};

} else {

return {

error: {

code: 70000,

message: "注册失败",

},

};

}

}

};

4.1.3用户登录界面

二手车交易网站中的前台上注册后的用户是可以通过自己的账户名和密码进行登录的,当用户输入完整的自己的账户名和密码信息并点击“登录”按钮后,将会首先验证输入的有没有空数据,再次验证输入的账户名+密码和数据库中当前保存的用户信息是否一致,只有在一致后将会登录成功并自动跳转到二手车交易网站的首页中;否则将会提示相应错误信息,用户登录界面如下图4-3所示。

                  

图4-3用户登录界面图

登录的逻辑代码如下所示。

Login.prototype.api = async function(req) {

var body = req.body;

var obj = await $.services["user"].get_obj({

username: body.username

},{like:false});

if (obj) {

var group = await $.services["user_group"].get_obj({

name:obj.user_group

})

if (group){

if (group.name!=="管理员"){

var sql = "select examine_state from "+ group.source_table +" WHERE user_id = " + obj.user_id;

var userExamine = await $.mysql.run(sql);

if (userExamine && userExamine.length > 0 && userExamine[0].examine_state!=="已通过"){

return {

error: {

code: 70000,

message: "该用户审核未通过"

},

};

}

}

if (obj.state!==1){

return {

error: {

code: 70000,

message: "用户非可用状态,不能登录"

},

};

}

var password = md5(body.password);

if (password === obj.password) {

req.session.user = obj;

var date = Date.parse(new Date());

var token = md5(obj.user_id + "_" + date);

await $.services["access_token"].add({

token,

info: JSON.stringify(obj),

user_id:obj.user_id

});

obj.token = token;

return {

result: {obj}

};

} else {

return {

error: {

code: 70000,

message: "密码错误"

},

};

}

}else {

return {

error: {

code: 70000,

message: "用户组不存在"

},

};

}

} else {

return {

error: {

code: 70000,

message: "账户不存在"

}

};

}

};

4.1.4汽车资讯详情界面

用户点击“汽车资讯”菜单显示所有的汽车资讯信息,可以按照条件进行汽车资讯的筛选或者输入关键词进行局部搜索,点击可以进入汽车资讯详细展示界面,在此界面用户可以收藏、点赞和评论。汽车资讯界面如下图4-3所示。

图4-4汽车资讯详情界面图

4.1.5车辆信息详情界面

当用户点击“车辆信息”这一菜单按钮,会显示管理员在后台发布的所有的车辆信息,支持通过关键词对车辆信息进行搜索,选择需要的车辆信息点击可以进入到车辆信息详细的介绍界面,在详细界面可以查看到车辆信息的发布用户、会员、汽车车型、车辆品牌、车辆颜色等信息,同时可以进行购买、点赞、收藏等操作。车辆信息界面如下图4-4所示。

图4-5车辆信息详情界面图

4.1.6购买界面

当用户在车辆信息详情界面想要进行购买,点击下方的“购买”按钮,就会跳转到购买填写界面,根据界面提示输入购买,点击“提交”按钮,购买就完成了。购买界面如下图4-6所示。

                  

图4-6 购买界面图

4.1.7用户帮拍详情界面

用户可以查看用户帮拍信息,在查询到自己想要了解的用户帮拍的时候,可以进入查看详细的介绍,支持用户对喜欢的用户帮拍进行收藏、点赞的功能。用户帮拍详情界面如下图4-7所示。       

图4-7用户帮拍详情界面图

4.2管理员功能模块

4.2.1登录界面

管理员在后台可以通过账号和密码进行登录,管理员的账号和密码是在数据库中直接设定的。界面展示如下图4-8所示。

图4-8登录界面图

4.2.2系统用户管理界面

管理员点击“系统用户”菜单可以对系统中存在的用户进行管理,包含了管理员用户和会员用户。界面如下图4-9所示。

图4-9系统用户管理界面图

用户管理管理关键代码如下:

Service.prototype.add = async function(body, config, config) {

var sql = $.mysql.toAddSql(body, Object.assign({}, this.config, config || {}));

var ret = await this.run(sql);

return ret;

};

4.2.3汽车车型管理界面

管理员点击“汽车车型”会显示出所有的汽车车型,支持通过汽车车型对汽车车型进行查询,如果想要添加新的汽车车型,点击“添加”按钮,输入相关信息,点击“提交”按钮就可以添加了,同时可以选择某一条汽车车型,点击“删除”进行删除,界面如下图4-10所示。

图4-10汽车车型管理界面图

汽车车型管理关键代码如下:

Service.prototype.del = async function(query, config) {

var sql = $.mysql.toDelSql(query, Object.assign({}, this.config, config || {}));

var ret = await this.run(sql);

return ret;

};

4.2.4车辆信息管理界面

管理员点击“车辆信息”会显示出所有的车辆信息,支持通过发布用户或者车辆编号对车辆信息进行查询,如果想要添加新的车辆信息,点击“添加”按钮,输入相关信息,点击“提交”按钮就可以添加了,同时可以选择某一条车辆信息,点击“删除”进行删除,还可以管理用户提交的评论信息。界面如下图4-11所示。

图4-11 车辆信息管理界面图

车辆信息管理关键代码如下:

Service.prototype.set = async function(query, body, config) {

var sql = $.mysql.toSetSql(query, body, Object.assign({}, this.config, config || {}));

var ret = await this.run(sql);

return ret;

};

4.2.5车辆购买管理界面

管理员点击“车辆购买”可以查看到系统当中所有的车辆购买信息,选择某一条车辆购买,点击“详情”,可以对车辆购买的支付,也可以删除车辆购买信息。界面如下图4-12所示。

图4-12 车辆购买界面图

车辆购买管理关键代码如下:

  Service.prototype.get_list = async function(query, config) {

var sql = $.mysql.toGetSql(query, Object.assign({}, this.config, config || {}));

return await this.run(sql);

};

4.2.6资源管理界面

管理员点击“资源管理”菜单能够对其下子菜单汽车资讯和资讯的分类进行增删改查。界面如下图4-13所示。

图4-13 资源管理界面图

5系统测试

5.1 系统测试用例

系统测试包括:用户登录功能测试、车辆信息展示功能测试、车辆信息添加、车辆信息搜索、密码修改、购买功能测试,如表5-1、5-2、5-3、5-4、5-5、5-6所示:

用户登录功能测试:

表5-1 用户登录功能测试表

用例名称

用户登录系统

目的

测试用户通过正确的用户名和密码可否登录功能

前提

未登录的情况下

测试流程

1) 进入登录页面

2) 输入正确的用户名和密码

预期结果

用户名和密码正确的时候,跳转到登录成功界面,反之则显示错误信息,提示重新输入

实际结果

实际结果与预期结果一致

车辆信息查看功能测试:

表5-2 车辆信息查看功能测试表

用例名称

车辆信息查看

目的

测试车辆信息查看功能

前提

用户登录

测试流程

点击车辆信息列表

预期结果

可以查看到所有车辆信息

实际结果

实际结果与预期结果一致

管理员添加车辆信息界面测试:

表5-3 管理员添加车辆信息界面测试表

用例名称

添加车辆信息测试用例

目的

测试车辆信息添加功能

前提

管理员用户正常登录情况下

测试流程

1)管理员点击车辆信息,然后点击添加后并填写信息。

2)点击进行提交。

预期结果

提交以后,页面首页会显示新的车辆信息 

实际结果

实际结果与预期结果一致

车辆信息搜索功能测试:

表5-4车辆信息搜索功能测试表

用例名称

车辆信息搜索测试

目的

测试车辆信息搜索功能

前提

测试流程

1)在搜索框填入搜索关键字。

2)点击搜索按钮。

预期结果

页面显示包含有搜索关键字的车辆信息

实际结果

实际结果与预期结果一致

密码修改搜索功能测试:

表5-5 密码修改功能测试表

用例名称

密码修改测试用例

目的

测试管理员密码修改功能

前提

管理员用户正常登录情况下

测试流程

1)管理员密码修改并完成填写。

2)点击进行提交。

预期结果

使用新的密码可以登录

实际结果

实际结果与预期结果一致

购买功能测试:

表5-6购买功能测试表

用例名称

购买测试用例

目的

测试用户购买功能

前提

用户正常登录情况下

测试流程

1)搜索查看车辆信息,点击购买。

2)填写购买,点击进行提交。

预期结果

购买成功

实际结果

实际结果与预期结果一致

5.2 系统测试结果

通过编写二手车交易网站的测试用例,已经检测完毕用户登录模块、车辆信息展示模块、车辆信息添加模块、车辆信息搜索模块、密码修改模块、购买模块功能测试,通过这6大模块为二手车交易网站的后期推广运营提供了强力的技术支撑。

结论

经过了几个月的努力,本二手车交易网站终于完成了,虽然在校期间也开发过一些小型的系统,但是都是在老师的讲解以及辅助下完成的,没有经历过开发之前的需求分析、系统分析,都是直接从系统设计开始的,因此本次开发的二手车交易网站对我意义重大。

在开发系统最初,首先对各个企业年终考核管理方面的需求进行调研,了解对于企业来说,开发的系统需要实现哪些功能才能满足企业的管理需求,对需求进行分析;其次选择自己比较熟悉的Nodejs语言,MYSQL数据库来设计开发,通过知网库、学校图书馆等地方查阅、学习这些技术,掌握编程的思想和方法,然后就是对系统进行分析,从系统开发的可行性、系统实现的功能、系统应该具备的性能以及系统的操作流程方面,对系统进行全方位的分析,确定系统的最终功能,从而对系统的功能和数据库进行设计,最后就是系统的实现以及对实现的功能的测试,确保系统能够稳定的运行。

在开发的过程中暴露出了自己的很多问题,比如前期的准备还是不够充分,不能完全掌握其操作流程;在开发过程中对Nodejs的编程掌握的还不够熟练以及对系统的环境配置上还存在很多问题,经常会导致项目在运行的时候出现错误。学无止境,通过一边查阅资料一边向导师请教,慢慢的解决了这些问题,在以后的学习、工作者我会更加严谨,通过本项目的开发,我将会受益终生!

参考文献

[1]Xiao Z ,Ali Y ,Xin W , et al. Sports Work Strategy of College Counselors Based on MySQL Database Big Data Analysis [J]. International Journal of Information Technology and Web Engineering (IJITWE), 2023, 18 (1): 1-14.

[2]李淑玲,朱彤. 基于Node.js技术的在线测试系统设计方案 [J]. 科技资讯, 2023, 21 (19): 35-38.

[3]赵停停. 基于MySQL数据库技术的Web动态网页设计研究 [J]. 信息与电脑(理论版), 2023, 35 (17): 174-176.

[4]王珂,王亚楠. MySQL数据库应用课程的TPACK教学实践 [J]. 电子技术, 2023, 52 (07): 39-41.

[5]Karthik G ,Debashish M ,Jagoda C , et al. Developing a MySQL Database for the Provenance of Black Tiger Prawns (Penaeus monodon). [J]. Foods (Basel, Switzerland), 2023, 12 (14):

[6]陈荣鑫. 基于NodeJS+Express框架的学院会议室预定系统设计与开发 [J]. 信息与电脑(理论版), 2021, 33 (02): 95-97.

[7]Taufik ,Adhilaksono B ,Effendy F . Performance Comparison of Web Backend and Database: A Case Study of Node.JS, Golang and MySQL, Mongo DB [J]. Recent Advances in Computer Science and Communications, 2021, 14 (6): 1955-1961.

[8]鲍建成. 一种基于区块链的二手车交易系统及其交易方法[P]. 江苏省: CN111626732A, 2020-09-04.

[9]张钊源,刘晓瑜,鞠玉霞. Node.js后端技术初探 [J]. 中小企业管理与科技(上旬刊), 2020, (08): 193-194.

[10]李皓. 基于Spring boot的二手车之家网站的设计与实现[D]. 北京交通大学, 2019.

[11]张钰桐,赵智超. 二手车交易网站的设计 [J]. 电脑知识与技术, 2019, 14 (11): 110-111.

[12]张小燕. 二手车交易有统一“规矩”了[N]. 厦门日报, 2019-12-22 (007).

[13]基于Node.js的JavaScript并发控制流框架[J]. 李轶.  江汉大学学报(自然科学版). 2019(02)

[14]基于NodeJS平台搭建REST风格Web服务[J]. 黄扬子.  无线互联科技. 2019(16)

[15]基于Node.js的学习交流平台的设计研究[D]. 张镭翕.云南大学 2019

[16]Node.js:一种新的Web应用构建技术[J]. 王金龙,宋斌,丁锐.  现代电子技术. 2019(06)

[17]服务器端javascript技术研究[J]. 高原.  信息与电脑(理论版). 2019(01)

[18]基于Node.js和JS的前后端分离实现[J]. 张鹏飞,王乾,胡晓冬,杨明浩,崔明旺.  软件. 2019(04)

[19]基于Node.js分布式微博系统的设计与实现[D]. 黄涛.北京邮电大学 2019

[20]基于Node.JS博客系统的设计与实现[D]. 彭娜.大连理工大学 2019

致  谢

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

感慨莫名,不知所言。遥想当初刚来学校的时候,心里总是想着工科学校会过于板正,会缺乏一些柔情,当时心里甚至有一点点排斥,但是随着我对学校的慢慢认识与了解,我才认识到了她的美丽,她的柔情,并且慢慢的喜欢上了这个校园,但是时间太快了,快到我还没有好好体会她的美丽便要离开了,但是她带给我的回忆,永远不会离开我,也许真正离开那天我的眼里会满含泪水,我不是因为难过,我只是想将她的样子映在我的泪水里,刻在我的心里。最后,感谢我的老师们,是你们教授了我们知识与做人的道理;感谢我的室友们,是你们陪伴了我如此之久;感谢每位关心与支持我的人。

少年,追风赶月莫停留,平荒尽处是春山。

免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~

标签:varchar,毕业设计,二手车,express,用户,源码,64,车辆,界面
From: https://blog.csdn.net/Biye_Design/article/details/144179725

相关文章

  • springboot智慧就业服务系统-计算机毕业设计源码46460
    目 录1绪论1.1研究背景1.2研究意义1.3论文结构与章节安排2 智慧就业服务系统系统分析2.1可行性分析2.2系统流程分析2.2.1数据增加流程2.2.2数据修改流程2.2.3数据删除流程2.3 系统功能分析2.3.1功能性分析2.4 系统用例分析3智慧就......
  • springboot高校体育场地预约系统-计算机设计毕业源码27892
    摘要随着信息技术的飞速发展,高校体育场地预约管理正迎来全新的变革。传统的场地预约方式不仅效率低下,而且容易出现信息不对称等问题,无法满足师生们日益增长的运动需求。为了提升预约效率,优化服务体验,我们基于Springboot框架和微信小程序技术,研发了高校体育场地预约系统。该......
  • ssm玉林师范学院宿舍管理系统-计算机设计毕业源码19633
    玉林师范学院宿舍管理系统设计与实现摘要随着大学生人数的增加,宿舍管理成为高校管理中的重要问题。本论文旨在研究玉林师范学院宿舍管理系统,探讨其优势和不足,并提出改进建议。通过对相关文献的综述和实地调研,我们发现该系统在宿舍分配、卫生评分、失物招领、设施维护等方面......
  • 界面控件DevExpress WPF v24.2新功能预览 - 人工智能(AI)集成
    DevExpressWPF拥有120+个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpressWPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。无论是Office办公软件的衍伸产品,还是以数据为中心......
  • 财务程序 SAAS版 云财务源码 财务系统 财务源码 云会计
    ......
  • SSM会同县高椅乡岭头村农产品销售系统-毕业设计源码11488
    目 录摘要1绪论1.1研究背景1.2国内外研究现状1.3论文结构与章节安排2会同县高椅乡岭头村农产品销售系统系统分析2.1可行性分析2.1.1技术可行性分析2.1.2经济可行性分析2.1.3操作可行性分析2.2系统流程分析2.2.1 数据流程3.3.2 业务流程2......
  • SSM宠物领养网站-毕业设计源码11606
    摘 要随着社会的发展和人们生活水平的提高,宠物已经成为许多家庭的重要成员。随之而来的是对于便捷、高效的宠物领养服务的需求,国内外对于宠物领养网站的需求呈现上升趋势。随着社交媒体的普及和线上服务的发展,人们越来越倾向于在线上寻找心仪的宠物和了解领养流程。同时,政......
  • springboot学生社团管理系统-毕业设计源码12144
    目 录摘要1绪论1.1研究背景1.2 研究意义1.3论文结构与章节安排2 系统分析2.1可行性分析2.2系统流程分析2.2.1数据新增流程2.2.2 数据删除流程2.3 系统功能分析2.3.1功能性分析2.3.2非功能性分析2.4 系统用例分析2.5本章小结3......
  • 【开题报告】基于Springboot+vue学生就业信息管理系统(程序+源码+论文) 计算机毕业设计
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着高等教育的普及和就业市场的日益竞争,学生就业信息管理成为高校和教育机构面临的重要挑战。传统的就业信息管理方式,如纸质简历、人工匹配等,不仅效......
  • 【开题报告】基于Springboot+vue学业导师双选系统(程序+源码+论文) 计算机毕业设计
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景在当今高等教育体系中,学业导师制度已成为培养学生综合素质、促进学术发展的重要途径。然而,传统的导师分配方式往往依赖于行政命令或随机分配,这可能导......