CN109147237B - 图书销售系统 - Google Patents
图书销售系统 Download PDFInfo
- Publication number
- CN109147237B CN109147237B CN201811055511.8A CN201811055511A CN109147237B CN 109147237 B CN109147237 B CN 109147237B CN 201811055511 A CN201811055511 A CN 201811055511A CN 109147237 B CN109147237 B CN 109147237B
- Authority
- CN
- China
- Prior art keywords
- user
- module
- book
- database
- interface
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07G—REGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
- G07G1/00—Cash registers
- G07G1/12—Cash registers electronically operated
- G07G1/14—Systems including one or more distant stations co-operating with a central processing unit
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及一种销售系统,为了解决现有图书销售网站不适用于实体店的问题,本发明提供一种图书销售系统。本发明包括:登录模块,用于实现管理员及用户登录;选购模块,用于实现用户搜索和分类查看书籍信息、添加购物车和查看购物车;支付模块,用于用户支付选购的图书;图书管理模块,用于实现管理员对书籍信息的添加、删除及修改的操作;订单管理模块,用于,实现管理员对订单的管理操作;公告栏模块,用于实现管理员对书籍信息、商家公告及系统公告添加或删除操作;友情链接模块,用于管理员添加或删除广告链接的操作;网页显示模块,用于显示系统的各页面;数据库交互模块,用于实现各模块之间的数据交互。本发明适用所有实体店进行网络销售。
Description
技术领域
本发明涉及一种销售系统,特别涉及一种图书销售系统。
背景技术
信息化社会的发展给我们的生产生活带来了数不尽的便利,现如今计算机网络技术已经形成一个完整的体系,近乎覆盖了世界各个领域、各个角落,电子商务也就此崛起。整个销售行业的的销售模式都发生了巨大变革。传统的图书销售模式——单一销售模式的实体书店,需要顾客到图书商店去挑选自己需要和喜欢的图书,不仅顾客觉得麻烦,而且很多书籍被顾客多次翻阅,最终因为折损无人购买或是低价处理,所以传统的销售模式已经不能满足现大众的需求,而网上图书销售系统可以以更好、更快、更便捷的方式为广大用户服务。
如今销售网站已经成为一个商品种类齐全的大规模的销售网站。这些实体书店的书籍种类繁多、数量庞大,现有的网站所能提供的销售环境不能满足它们的销售需求和销售领域。
发明内容
本发明的目的是为了解决现有的图书销售网站不适用于实体店的问题,本发明提供一种图书销售系统。
本发明的图书销售系统,所述系统包括登录模块,选购模块、支付模块、图书管理模块、订单管理模块、公告栏模块、友情链接模块和数据库;
登录模块,用于实现管理员登录和用户登录的操作;
选购模块,用于实现用户搜索和分类查看书籍信息、添加购物车和查看购物车的操作;
支付模块,用于在用户登录状态下,实现用户支付选购的图书的操作;
图书管理模块,用于在管理员登录状态下,实现管理员对书籍信息的添加、删除及修改的操作;
订单管理模块,用于在管理员登录状态下,实现管理员对订单的管理操作;
公告栏模块,用于在管理员登录状态下,实现管理员对书籍信息、商家公告及系统公告添加或删除操作;
友情链接模块,用于在管理员登录状态下,添加或删除广告链接的操作;
网页显示模块,用于显示登录模块、选购模块、支付模块、图书管理模块、订单管理模块和公告栏模块的显示页面及操作页面;
数据库交互模块,用于实现各模块之间的数据交互。
优选的是,所述支付模块,还用于在支付时,弹窗支付二维码。
优选的是,所述选购模块,还用于当用户搜索和分类查看图书信息、添加购物车和查看购物车的操作时,检测用户是否登录,若未登录,提示用户登录。
优选的是,数据库交互模块包括访问模块、封装数据库模块和接口模块;
访问数据库模块,用于连接访问数据库、设置数据库的连接地址、端口号、用户名、密码以及数据库名称;
封装数据库模块,用于连接数据库、接收调用数据库的参数、数据库操作、执行数据库操作的判断,实现数据库封装;
接口模块,包括登录与验证码接口、操作个人信息接口、获取书籍接口、操作书籍接口、获取公告接口、获取订单接口、退出登录接口。
优选的是,所述用户注册接口,用于传递用户名、密码、手机号和地址这四个参数,接收到这四个参数后判断这四个参数确定用户注册成功或失败,同时限制每个手机号只能是绑定一个用户;
登录与验证码接口,用于在用户登录过程中需传入用户名和密码两个参数,当对用户登录验证时,无需传入参数并设置随机生成四位验证码发送至用户手机,当出现输入的用户名与密码不对应、输入的用户名不存在或是验证码错误时,就会出现登录失败的情况,否则成功登入系统;
操作个人信息接口,用于用户在个人信息变更时进行及时修改;
获取书籍接口,用于获取书籍的图书类别,所述图书类别包括新书和特价书;
操作书籍接口,用于传输参数有操作、查询数据和页码,利用模糊搜索实现查询书籍;
获取公告接口,用于实时获取商品的信息、价格的调整或店铺的销售状态、销售活动;
获取订单接口,用于实现订单的插入操作、查询操作和更新操作,对用户和管理员更新订单信息;
退出登录接口,用于实现用户退出登录模块。
优选的是,所述网页显示模块包括图书管理页面、未进入登录状态的页面、管理员登录状态的页面、用户登录状态的页面;
管理员登录状态的页面包括图书管理页面、订单管理页面和公告管理页面;
用户登录状态的页面包括书籍详情页面、购物车页面、订单详情页面和公用组件页面。
优选的是,所述系统应用数据库ProgreSQL、前端框架Node.js和后端框架Flask实现。
上述技术特征可以各种适合的方式组合或由等效的技术特征来替代,只要能够达到本发明的目的。
本发明的有益效果在于,本发明的网络图书销售系统,为商家和用户带来便捷。在功能设计上主要包括网页设计、登录设计、选购商品流程设计、支付流程设计、图书管理设计、订单管理设计、公告栏设计,实现用户登录和管理员登录两个系统,在管理员登录状态下,设计实现管理员对图书、订单以及公告的管理操作;在用户登录状态下,设计实现用户搜索和分类查看书籍信息、添加和查看购物车、支付结算购物车、查看订单和公告等一系列操作;在未登录状态下,设计实现用户搜索和分类查看书籍信息、添加和查看购物时提示登录、点击登录可根据登录用户密码进入不同系统等一系列操作。本发明适用所有实体店进行网络销售。
附图说明
图1为本发明的原理示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
下面结合附图和具体实施例对本发明作进一步说明,但不作为本发明的限定。
本实施方式的图书销售系统,所述系统包括登录模块,选购模块、支付模块、图书管理模块、订单管理模块、公告栏模块、友情链接模块和数据库;
登录模块,用于实现管理员登录和用户登录的操作;
选购模块,用于实现用户搜索和分类查看书籍信息、添加购物车和查看购物车的操作;
支付模块,用于在用户登录状态下,实现用户支付选购的图书的操作;
图书管理模块,用于在管理员登录状态下,实现管理员对书籍信息的添加、删除及修改的操作;
订单管理模块,用于在管理员登录状态下,实现管理员对订单的管理操作;
公告栏模块,用于在管理员登录状态下,实现管理员对书籍信息、商家公告及系统公告添加或删除操作;
友情链接模块,用于在管理员登录状态下,添加或删除广告链接的操作;
网页显示模块,用于显示登录模块、选购模块、支付模块、图书管理模块、订单管理模块和公告栏模块的显示页面及操作页面;
数据库交互模块,用于实现各模块之间的数据交互。
本实施方式实现用户登录和管理员登录两个系统,在管理员登录状态下,设计实现管理员对图书、订单以及公告的管理操作;在用户登录状态下,设计实现用户搜索和分类查看书籍信息、添加和查看购物车、支付结算购物车、查看订单和公告等一系列操作。
优选实施例中,所述系统应用数据库ProgreSQL、前端框架Node.js和后端框架Flask实现。
ProgreSQL是一个免费的、开源的数据库并且拥有很长的历史。在1995年,加利福尼亚大学的伯克利分校开发了这个项目。全世界有超过1000名贡献者为它进行维护。它提供了一个单个完整功能的版本,而不是像MySQL那样提供不同的社区版、商业版和企业版。ProgreSQL以它数据一致性和完整性著称。因为它的可靠性好,在保护数据方面上很擅长,很多ProgreSQL的粉丝认为它能与Oracle相媲美。
Node.js是一个Java脚本的运行环境。它是在2009年5月发布的由Ryan Dahl开发的一个新兴的前端框架。它是基于Chrome V8引擎开发的项目。
Node.js采用事件驱动和异步编程,为网络服务而设计。因为它使用非阻塞模式的IO处理方式,在相对低系统资源耗用下依然具有高性能和强大的负载能力,所以它非常适合用作依赖其它IO资源的中间层服务。Node.js轻量高效,可以认为是数据密集型分布式部署环境下的实时应用系统的完美解决方案。
前端开发语言采用HTML、XML、CSS、Vue.js;后端开发语言采用Python;
Flask框架是由Python编写。使用这个微框架可以帮助快速实现Web服务或是一个网站。Django是一个功能强大且全面的框架,而Flask仅拥有Django的一些基本配置,这些配置很大可能上不会满足开发者的需求,但是这也省去了开发者在选择应用上耗费的时间。Django有模板,表单,路由,认证,基本的数据库管理等等内建功能。与之相反,Flask只是一个内核,默认依赖于两个外部库:Jinja2模板引擎和Werkzeug WSGI工具集,其他很多功能都是以扩展的形式进行嵌入使用的。相比于Django的全面性,Flask框架在使用中会显得更加灵活、多变。
优选实施例中,所述支付模块,还用于在支付时,弹窗支付二维码。
优选实施例中,所述选购模块,还用于当用户搜索和分类查看图书信息、添加购物车和查看购物车的操作时,检测用户是否登录,若未登录,提示用户登录。
优选实施例中,数据库交互模块包括访问模块、封装数据库模块和接口模块;
访问数据库模块,用于连接访问数据库、设置数据库的连接地址、端口号、用户名、密码以及数据库名称;
封装数据库模块,用于连接数据库、接收调用数据库的参数、数据库操作、执行数据库操作的判断,实现数据库封装;
接口模块,包括登录与验证码接口、操作个人信息接口、获取书籍接口、操作书籍接口、获取公告接口、获取订单接口、退出登录接口。
在本实施方式中,对系统功能的设计就是对数据库交互相关的代码设计,目的实现管理员和用户的操作。创建文件夹并命名为book,将连接数据库内容分为三部分共同存储在该文件夹下。其中,config.py文件用来实现访问数据库模块,连接访问数据库,设置数据库的连接地址、端口号、用户名、密码以及数据库名称。connect_table.py文件用来实现封装数据库模块,用来封装数据库语句。
数据库是图书销售系统开发必不可少的一部分,在本实施方式中,数据库需要用来存储顾客的基本信息、图书相关信息、订单信息以及管理员信息。
本实施方式中选择连接本地数据库,其中端口号设置为5432,用户名和密码均设置为postgres,数据库名为book。
在封装数据库文件中,首先根据config.py对数据库的设定进行数据库的连接,再记录数据库进行增、删、改、查的操作,同时定义标志位。当有数据参数传入时,该文件会通过判断标志位和参数,执行对应的操作。
在connect_table.py文件头部是连接数据库代码和获取参数代码,用户在网页上执行注册、修改个人信息、添加购物车这些操作都要存入数据库中,经过数据库处理后,再显现到网页上,呈现给用户。用户的所有操作都会对应某个或者某几个数据库操作。大部分的接口都需要传入参数,没有传递来的参数,程序不能识别到对数据库的操作,数据库信息不会发生改变,用户的操作就是不能实现的。
当connect_table.py文件接收到参数后,标志位循环计算代码会对参数进行计算,得出operation、table_name、key_value和condition这四个参数值以及是否进行拼接。operation代表要进行的数据库操作,table_name是要进行操作的表名,key_value是由字段和数值组成的dict,condition表示where拼接条件、由字段和数值组成的dict。
优选实施例中,所述用户注册接口,用于传递用户名、密码、手机号和地址这四个参数,接收到这四个参数后判断这四个参数确定用户注册成功或失败,同时限制每个手机号只能是绑定一个用户;
用户注册接口是用户获得系统使用高级权限的接口。用户注册接口需要传递username(用户名)、password(密码)、phone(手机号)和address(地址)这四个参数,接收到参数后,后端代码根据判断这四个参数确定注册成功或失败。但是在本实施方式中,要求用户的手机号不能重复,即每个手机号只能是绑定一个用户。这样的设计是对用户安全进行保障,防止他人窃取用户账户和密码,或是在收货时出现他人冒领的情况。
登录与验证码接口,用于在用户登录过程中需传入用户名和密码两个参数,当对用户登录验证时,无需传入参数并设置随机生成四位验证码发送至用户手机,当出现输入的用户名与密码不对应、输入的用户名不存在或是验证码错误时,就会出现登录失败的情况,否则成功登入系统;
在用户完成注册获得权限后就可以登录系统使用该权限。在用户登录过程中需要登录和验证码两个接口。在登录接口中需传入username(用户名)和password(密码)两个参数,而验证码接口无需传入参数并设置随机生成四位验证码。接口设定完成后,系统会对用户信息进行判定,如果判定成功就可以进入系统。但是,当出现输入的账户与密码不对应、输入的账户不存在或是验证码错误时,就会出现登录失败的情况。这一系列的登录验证,都是通过传递参数,连接数据库,在数据库中进行查找验证操作实现的。
操作个人信息接口,用于用户在个人信息变更时进行及时修改;
在本实施方式中,考虑到基于Flask框架的图书销售系统是应用到电子商务中。用户的个人信息不是一成不变的,尤其是在网络销售领域,用户的个人信息关系到结算支付和收货地址。所以在最初的系统设计中就需要预设一个操作个人信息的接口,方便用户在个人信息变更时进行及时修改。操作个人信息接口需要传递参数operation(操作)、username(用户名)和data(更新信息值)。
获取书籍接口,用于获取书籍的图书类别,所述图书类别包括新书和特价书;
在设计过程中,获取书籍是一个相对复杂的接口,需要在该接口传递isnew(新书专区)、ischeap(特价专区)、catalog(类别)和index(页码)这四个参数。在整个图书销售系统中,图书的类别需要判断,这里判断的并不是图书的分类,而是判断该图书是否在新书或是特价列表中。本实施方式中所有的图书都会写入数据库的图书列表中,包括图书名称、简介、价格、图片、作者等基本信息。管理员在增添书籍时,不仅要输入该书的名称、简介、价格、图片、作者,还有输入该书的类别,比如是否为新书、是否为特价书。获取书籍接口会根据它的类别,分别显示在不同分类的的页面下。但是大部分的书并不是新书或是特价书,他们会和新书及特价书一同显示在总书籍页面,所以获取接口并不需要在判别这一类书籍时进行其他处理。获取书籍接口整体代码包含对图书分类的判断和设置分类查询书籍的语句。
操作书籍接口,用于传输参数有操作、查询数据和页码,利用模糊搜索实现查询书籍;
对于一个功能完备的图书销售系统来说,不能仅为用户提供分类查询的功能。在本实施方式中还要实现查询书籍的操作,也就是呈现在网页上的搜索框的功能。根据大部分的网页搜索功能来看,模糊搜索更符合本实施方式的设计要求。这样的设计才更符合大众的需要。在该接口的设计中,需要传输参数有poeration(操作)、like(查询数据)和index(页码)。
获取公告接口,用于实时获取商品的信息、价格的调整或店铺的销售状态、销售活动;
在销售行业,关于商品的信息、价格的调整或是店铺的销售状态、销售活动都应该实时性地提供给顾客。尤其是销售动态,比如最近网站升级暂停,应提前告知顾客,网站将在何年何月何日的哪个时间段将暂停服务。当网站升级重新开放后,更应该将升级优化的服务内容及时告知顾客。所以,为了增强用户体验,在本次系统开发中,本实施方式增加了公告栏页面,该页面同时出现在用户系统和销售系统中。当以管理员的身份进入系统后时,拥有对公告进行操作的权限,用户仅有实时性查看公告的权限。
在获取公告接口中需要传递operation(操作)、connect(链接)、title(内容)及id这四个参数。在传入参数后,接口程序通过判定operation(操作)参数来对公告进行进一步处理。
获取订单接口,用于实现订单的插入操作、查询操作和更新操作,对用户和管理员更新订单信息;
在销售行业中,即使是传统的销售这样面对面的销售模式也需要有效的发票来给予用户保证,同时商家根据订单记录账目。而电子商务存在很多不确定性,在淘宝网站刚刚起步时,很多网民只是进行浏览,他们存在商家不会发货,诈取钱财这些顾虑。而如今支付方式和物流行业都走向成熟,订单对于大部分顾客来说,只是在商品存在问题时用来退换货。但是它仍然是销售系统中必不可少的一部分,同样需要出现在用户系统和管理员系统中并且同步关联。即在用户系统中订单信息发生改变时会立即更新,同时在管理员系统中也能实时性显示用户订单的变化。
在操作订单接口中需要传递bid(图书编号)、username(用户名)、table(表名)以及operation(操作)这四个参数。该部分接口程序在传递参数后首先根据username查出us_id,接着根据operation来判定对订单的插入操作、查询操作和更新操作。
退出登录接口,用于实现用户退出登录模块;
退出登录接口是系统开发中简单而必不可少的一个接口。如果不设计该接口,用户无法在一台机器、一个浏览器上登录其他账户,也无法在更改密码后重新登录系统。同时在系统设计中还需要很多自动退出登录的情况,比如在更改密码后,系统立即刷新,强制用户退出。
优选实施例中,所述网页显示模块包括图书管理页面、未进入登录状态的页面、管理员登录状态的页面、用户登录状态的页面;
管理员登录状态的页面包括图书管理页面、订单管理页面和公告管理页面;
用户登录状态的页面包括书籍详情页面、购物车页面、订单详情页面和公用组件页面。
网页承担着一个网站的颜值,也是增强用户体验感的一个决定性因素。它的目的是把系统的功能和信息在页面中展现出来。所以网页设计是一门技术,不仅要考虑到页面的美观性、实用性,还要考虑到系统功能的全覆盖性。
本实施方式的图书销售系统的设计开发需要大量的代码,也需要使用手脚架来方便对代码进行管理和分类。设计中使用vue_cli手脚架,会在整体文件内自动生成整个项目的目录结构。
build文件夹负责存储webpack的相关配置;config文件夹中包含vue基本配置文件,比如打包输出、端口监听的相关配置;node_modules文件夹是用node安装的依赖包;scr文件夹是资源文件夹,将代码写在该文件夹下;static文件夹是用来存储静态资源的,比如图片、json数据;test文件夹是用来进行单元测试和代码测试的文件夹。在该目录下还有一些不同类型的文件,.babelrc文件负责ES6语法编译配置,用来将ES6代码转换成浏览器能够识别的代码;.editorconfig文件是用来定义语法格式的;.gitignore文件负责git上传需要忽略的文件格式;.postcssrc.js文件是转换css工具;.index.html文件是页面的入口;package.json文件描述项目基本信息,包含项目开发的模块、项目的名称、项目的版本号;README.md文件是对项目的说明。在实际开发中重点应用到scr文件夹。
在src文件夹中assets文件夹用来存储静态资源、componens文件夹用来编写公用组件、pages文件夹用来编写页面、router文件夹用来配置页面跳转、validate文件夹用来对信息合法的进行验证。由于系统页面设计比较复杂,代码非常多,本章仅详细介绍了admin..vue文件、index.vue文件、login.vue文件、register.vue文件、myshopcar.vue文件、commitorder.vue文件、myorder.vue文件和myinfor.vue文件。在页面设计中还有bookinfor.vue文件(书籍详情)、bookabstract.vue文件(书籍信息管理列表)、cheapbook.vue(特价书籍列表)、newbook.vue(新书列表)、computerbook.vue(计算机类书籍列表)、economybook.vue(经济类书籍列表)、foreifnbook.vue(外语类书籍列表)、letterbook.vue(文学类书籍列表)、mathbook.vue(数学类书籍列表)、goods.vue(购物流程提示)、searchbook.vue(搜寻书籍)以及设置公告处理的文件。由这些文件对网页的一步步描述,构建了一个完整的浏览系统。网页与数据库相关联,就形成了一个完整的销售系统,能够实现用户买卖书籍、操作员处理后台事务这一系列操作。
scr文件夹下的assets文件夹是用来存储静态资源的文件夹,像js、css这类文件都可以放入在该文件夹下。在本实施方式中,assets文件夹仅用来存储设计网页中应用到的图片,图片全部存入该文件夹中的images文件夹内。
scr文件夹下componens文件夹是用来编写公用组件的地方。很多开发网站都会设计共用组件,本实施方式的公用组建设计在页面尾部。在页面尾部添加友情链接,用户点击友情链接就可进入付费广告的网站。同时在公用组件中添加官方微博和微信,用户通过扫二维码就可以关注实时商家的活动信息。设计公用组件的文件名叫footer.vue,底部背景设置为蓝色。
scr文件夹下的pages文件夹是页面编写的地方,页面是由组建构成的,包含的文件也是vue文件。本实施方式的页面较为复杂,其中包含了25个vue文件。整个用户登录系统的页面有:首页、登录页面、注册页面、新书专区页面、特价专区页面、系统公告页面、购物车页面、我的信息页面、图书详情页面以及结算支付页面。管理员系统的页面比较简单,根据设计需要,该系统仅包含图书管理页面、订单管理页面以及公告管理页面。根据系统开发的实际要求,管理员登录页面与用户登录页面共用,节约开发成本,减少代码。
admin.vue文件是用来描述管理员登录系统页面框架的文件。该页面设计比较简单,主要用于商家对图书、订单和公告的管理。本实施方式中,将该页面分为左右两部分。在页面左侧设置分页功能,页面右侧负责显示对应信息。该系统主要分为图书信息管理、订单信息管理以及公告信息管理三个模块。当操作员登录管理员系统时,页面默认显示图书信息列表。当操作员点击左侧订单管理中的订单信息管理时,页面右侧会刷新显示订单信息列表,并可以执行对订单的删除、修改等操作。当操作员点击公告管理中的公告信息管理时,页面右侧会刷新显示公告信息列表,并可以执行对公告的添加、修改等操作。
当然,该系统仅只是一个基础系统,在为用户设计系统中,可在左侧分栏中添加其他分类,或者在图书管理、订单管理这样的分类下面添加其他子页面、子列表。
index.vue文件所设计的是本次开发中最主要的页面。在用户或商家进入系统还未登录状态,或是其他网民偶然进入该系统中所展示的页面。该页面左上方展示的是网站、商家的店名,右上方设置了登录和注册的按钮。在整体页面上方显示的是一个搜索框,并在搜索框下面提示热门搜索,这也比较符合一个图书爱好者的需要。在搜索框的右侧设置了购物车按钮。在页面的中间部位是对整个系统中主要页面的分页设置,主要有首页、新书专区、特价专区、系统公告这四个页面。这并不是全部的分页,当用户登录系统后,该区域会增加其他分页。在该系统的左侧还有一个图书类别列表,方便用户在不确定自己需要的具体的书籍名称时,根据图书分类进行简要筛选。在本实施方式的图书类别中有:计算机类图书、数学图书、文学图书、外语图书、经济图书。同时为了给用户提供更优质的购物环境,本实施方式中在类别下方添加了重磅推荐的图书。在实际的商家定制系统时,可根据商家经营书籍的主要类别进行分类。
login.vue文件是用来描述登录页面的。整体的登录页面设计非常简单,方便用户快速登录。登录页面上仅有一个登录列表,需要用户输入用户名和密码。当用户输入的用户名不存在、密码输入错误或是验证码输入不正确时,页面均会出现红色字体提示用户重新输入。在用户误入登录页面中而没有账户时无需推出该页面,在登录列表下方设计了一个前去注册侧面的按钮,给用户带来便利。
register.vue文件是用来描述注册页面的。在注册页面中也存在一个注册列表,该列表相对复杂。列表中包含:姓名、手机号、密码、二次确认密码、地址及详细地址栏。这些都是用户必须输入的信息,若两次密码输入不一致或是其他信息输入格式不规范,页面均会出现提示。同样,以防已有账户的用户误入注册页面,在注册列表下方也设置了一个进入登录页面的按钮。
在点击首页中的购物车时会进入购物车页面。myshopcar.vue文件就是用来描述购物车页面的。每个用户的购物车都是不同的,在购物车页面中,该用户的所有添加购物车的书籍都会显示在页面中的购物车列表中。在购物车列表上方系统为用户提示的购物流程:我的购物车——确认订单信息——成功提交订单。列表中显示书名、作者、数量、单价及操作,用户可以勾选列表左侧的勾选框进行结算、再数量下增加或减少某一书籍的购买数量,也可以在操作中删除一些不再需要的书籍。再勾选书籍的同时,列表右下方或实时显示对应商品的总价,当用户确认商品准备结算时可以点击结算按钮并确认订单页面。若用户想要继续购物,可点击继续购物的按钮。
commitorder.vue文件描述的是确认订单页面。在该页面上方,依然有购物流程提示。在订单列表的左上方显示收货人和收货地址,列表中会显示书名、作者、数量和价格。当顾客点击支付按钮确认支付时,页面会弹出支付码,帮助用户完成最后支付。当顾客发现订单信息需要修改、想要取消订单时,点击返回按钮退回购物车页面。
myorder.vue文件描述的是我的订单页面。当用户登录系统后,该页面就会出现在分页中。在订单列表的左上方显示收货人和收货地址,列表中会显示书名、作者、数量、价格以及合计这些信息。顾客可以在购物发生问题时,将自己的订单信息发送给商家,及时与商家进行沟通。myinfor.vue文件是用来描述我的信息页面的。在该页面中有一个信息列表,用来显示用户的名字、手机号以及收货地址。列表下方有更改密码和更改地址两个按钮。在更改密码时,用户需输入原密码和两次新密码,两次新密码要求相同。当用户需要更改地址时,只需在页面中勾选省份和城市并输入详细地址就可更改成功。
router文件夹(路由文件夹)是用来存储配置页面跳转文件的。该文件夹下的index.js文件就是本实施方式中对页面跳转的配置。系统中所有的页面跳转配置都在该文件内。当然有些页面的跳转是需要条件的,所以需要设置路由拦截。在该系统中,用户在未登录状态下进入购物车页面或是进行添加购物车操作时就会产生路由拦截,页面会出现提示用户登录的提示框。或是像我的订单、我的信息这两个页面在用户未登录的状态下就不会出现在系统中。
validate文件夹下仅有一个.js文件,该文件是对信息合法的验证,其中包括手机号验证、email验证、网站地址验证、IP验证和密码验证。在用户输入这些信息时,该文件会根据文件内的设定来验证输入信息是否合法。若输入的信息不合法,就会出现注册失败、购买失败、登录失败等问题。这些验证也保证了用户不会用不合法的信息进入系统。
在用户未登录时,系统也要呈现给用户一些页面,方便用户以游客浏览书籍。当游客有想要购买的书籍时,就有可能登录或是注册账户。在本实施方式中,仅设置admin这一管理员账号。当商家以管理员身份进入系统时,系统的结构与游客身份进入系统的页面完全不同。在管理员登录的系统中主要分三个模块:图书管理、订单管理、公告管理。在进入系统时,系统或默认呈现图书管理中的图书信息列表。商家也可以点击右上方退出登录,更换其他账户进入用户登录系统中。
用户登录的系统与游客进入的系统极为相近。也可以说用户登录系统,获取了一些权限,看到了完整的用户系统,而游客身份缺少一些权限,只能看到用户登录系统的一部分。用户登录后,系统增加了我的订单和我的信息两个页面。同时用户拥有添加、查看购物车以及购买书籍的权限。在游客进行添加购物车、查看购物车等操作时,由于游客缺少权限,就会出现路由截断的情况,在页面中就会强制跳转,进入登录页面。
用户登录系统的首页,在页面的上方有搜索图书的搜索框和提示的热门搜索词。搜索框右侧是购物车按钮。搜索框下是对系统的分页处理,包含首页、新书专区、特价专区、系统公告、我的订单和我的信息这六大页面。当用户点击新书专区和特价专区或是点击列表左侧图书类别中的计算机类图书、数学图书、文学图书、外语图书、经济图书时,页面不会刷新,仅图书列表发生改变,列表仅显示符合对应筛选条件的书籍。
在点击查看详情时,页面并未发生跳转,只是图书列表刷新,显示出该书籍的详细信息。包括书籍的图片、价格、作者、出版社以及内容简介。同时还设置了数量选择、添加购物车以及返回按钮。在用户添加购物成功后,点击购物车就可以看到自己要买的书籍。
在购物车页面点击去结算就会进入确定订单页面,页面上方是系统提示用户购买书籍流程。页面下方会展示出收货人、收货地址以及订单图书信息,用户认真核对后点击确认支付就会出现支付页面。
在该系统的浏览网页时,所有页面的底部都有一个友情链接模块,该部分就是公用组件的设计。商家可以在下方添加友情链接,为自己的其他产品做广告,也可以选择收取费用为作为广告区域。同时在组件页面中添加官方微博和官方微信,方便顾客实时关注店铺活动。商家与顾客还可以线下及时沟通,方便商家为顾客更好的提高服务。
虽然在本文中参照了特定的实施方式来描述本发明,但是应该理解的是,这些实施例仅仅是本发明的原理和应用的示例。因此应该理解的是,可以对示例性的实施例进行许多修改,并且可以设计出其他的布置,只要不偏离所附权利要求所限定的本发明的精神和范围。应该理解的是,可以通过不同于原始权利要求所描述的方式来结合不同的从属权利要求和本文中所述的特征。还可以理解的是,结合单独实施例所描述的特征可以使用在其他所述实施例中。
Claims (5)
1.图书销售系统,其特征在于,所述系统包括登录模块,选购模块、支付模块、图书管理模块、订单管理模块、公告栏模块、友情链接模块、网页显示模块和数据库交互模块;
登录模块,用于实现管理员登录和用户登录的操作;
选购模块,用于实现用户搜索和分类查看书籍信息、添加购物车和查看购物车的操作;
支付模块,用于在用户登录状态下,实现用户支付选购的图书的操作;
图书管理模块,用于在管理员登录状态下,实现管理员对书籍信息的添加、删除及修改的操作;
订单管理模块,用于在管理员登录状态下,实现管理员对订单的管理操作;
公告栏模块,用于在管理员登录状态下,实现管理员对书籍信息、商家公告及系统公告添加或删除操作;
友情链接模块,用于在管理员登录状态下,添加或删除广告链接的操作;
网页显示模块,用于显示登录模块、选购模块、支付模块、图书管理模块、订单管理模块和公告栏模块的显示页面及操作页面;
数据库交互模块,用于实现各模块之间的数据交互;
其特征在于,数据库交互模块包括访问数据库模块、封装数据库模块和接口模块;
访问数据库模块,用于连接访问数据库、设置数据库的连接地址、端口号、用户名、密码以及数据库名称;
封装数据库模块,用于连接数据库、接收调用数据库的参数、数据库操作、执行数据库操作的判断,实现数据库封装;
接口模块,包括用户注册接口、登录与验证码接口、操作个人信息接口、获取书籍接口、操作书籍接口、获取公告接口、获取订单接口、退出登录接口;
所述系统应用数据库ProgreSQL、前端框架Node .js和后端框架Flask实现;
config .py文件用来实现访问数据库模块,连接访问数据库,设置数据库的连接地址、端口号、用户名、密码以及数据库名称;
connect_table .py文件用来实现封装数据库模块,用来封装数据库语句;
在封装数据库文件中,首先根据config .py对数据库的设定进行数据库的连接,再记录数据库进行增、删、改、查的操作,同时定义标志位;当有数据参数传入时,该文件会通过判断标志位和参数,执行对应的操作;
在connect_table .py文件头部是连接数据库代码和获取参数代码,用户在网页上执行注册、修改个人信息、添加购物车这些操作都要存入数据库中,经过数据库处理后,再显现到网页上,呈现给用户;用户的所有操作都会对应某个或者某几个数据库操作;接口用于传入参数,以使程序识别到对数据库的操作,改进数据库信息,实现用户操作;
用户注册接口需要传递用户名、密码、手机号和地址这四个参数,接收到参数后,后端代码根据判断这四个参数确定注册成功或失败;
在登录接口中需传入用户名和密码两个参数,而验证码接口无需传入参数并设置随机生成四位验证码;
操作个人信息接口需要传递参数操作、用户名和更新信息值;
获取书籍接口,需要传递新书专区、特价专区、类别和页码这四个参数;
操作书籍接口,需要传输参数操作、查询数据和页码;
在获取公告接口中需要传递操作、链接、内容及id这四个参数;
在获取订单接口中需要传递图书编号、用户名、表名以及操作这四个参数;
当connect_table .py文件接收到参数后,标志位循环计算代码会对参数进行计算,得出operation、table_name、key_value和condition这四个参数值以及是否进行拼接。
2.根据权利要求1所述的图书销售系统,其特征在于,所述支付模块,还用于在支付时,弹窗支付二维码。
3.根据权利要求1所述的图书销售系统,其特征在于,所述选购模块,还用于当用户搜索和分类查看图书信息、添加购物车和查看购物车的操作时,检测用户是否登录,若未登录,提示用户登录。
4.根据权利要求1所述的图书销售系统,其特征在于,所述用户注册接口,用于传递用户名、密码、手机号和地址这四个参数,接收到这四个参数后判断这四个参数确定用户注册成功或失败,同时限制每个手机号只能是绑定一个用户;登录与验证码接口,用于在用户登录过程中传入用户名和密码两个参数,当对用户登录验证时,无需传入参数并设置随机生成四位验证码发送至用户手机,当出现输入的用户名与密码不对应、输入的用户名不存在或是验证码错误时,就会出现登录失败的情况,否则成功登入系统;
操作个人信息接口,用于用户在个人信息变更时进行及时修改;
获取书籍接口,用于获取书籍的图书类别,所述图书类别包括新书和特价书;
操作书籍接口,用于传输参数有操作、查询数据和页码,利用模糊搜索实现查询书籍;
获取公告接口,用于实时获取商品的信息、价格的调整或店铺的销售状态、销售活动;
获取订单接口,用于实现订单的插入操作、查询操作和更新操作,对用户和管理员更新订单信息;
退出登录接口,用于实现用户退出登录模块。
5.根据权利要求1所述的图书销售系统,其特征在于,所述网页显示模块包括图书管理页面、未进入登录状态的页面、管理员登录状态的页面、用户登录状态的页面;
管理员登录状态的页面包括图书管理页面、订单管理页面和公告管理页面;
用户登录状态的页面包括书籍详情页面、购物车页面、订单详情页面和公用组件页面。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811055511.8A CN109147237B (zh) | 2018-09-11 | 2018-09-11 | 图书销售系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811055511.8A CN109147237B (zh) | 2018-09-11 | 2018-09-11 | 图书销售系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109147237A CN109147237A (zh) | 2019-01-04 |
CN109147237B true CN109147237B (zh) | 2021-05-25 |
Family
ID=64824649
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811055511.8A Active CN109147237B (zh) | 2018-09-11 | 2018-09-11 | 图书销售系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109147237B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110276590A (zh) * | 2019-06-04 | 2019-09-24 | 无锡奥特维科技股份有限公司 | 交换项目管理方法、装置、设备及计算机存储介质 |
CN110222270A (zh) * | 2019-06-13 | 2019-09-10 | 北京开卷信息技术有限公司 | 一种书业智能查询分析平台 |
CN111367525B (zh) * | 2020-03-19 | 2020-10-23 | 北京三维天地科技股份有限公司 | 一种前端架构系统 |
CN111861640A (zh) * | 2020-06-29 | 2020-10-30 | 北京开卷信息技术有限公司 | 一种智能选书系统、选书方法、存储介质及智能选书终端 |
CN112612988A (zh) * | 2020-12-28 | 2021-04-06 | 深圳壹账通智能科技有限公司 | 页面处理方法、装置、计算机设备及存储介质 |
CN113986089A (zh) * | 2021-10-25 | 2022-01-28 | 北京有竹居网络技术有限公司 | 禁止页面跳转方法及设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000043930A1 (en) * | 1999-01-21 | 2000-07-27 | Polygon Network, Inc | Method and apparatus for creation of personalized sub-page of web site |
JP2007323169A (ja) * | 2006-05-30 | 2007-12-13 | Hitachi Software Eng Co Ltd | 書籍購入サポートシステム |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080162298A1 (en) * | 2000-06-15 | 2008-07-03 | American Express Travel Related Services Company, Inc. | Online ordering system and method |
CN103903175A (zh) * | 2014-03-21 | 2014-07-02 | 沈阳化工大学 | 一种电子商务购物系统 |
CN103903152A (zh) * | 2014-03-27 | 2014-07-02 | 沈阳化工大学 | 网络购物中心系统 |
CN104331814A (zh) * | 2014-10-17 | 2015-02-04 | 沈阳化工大学 | 一种网上图书销售系统 |
CN105447739A (zh) * | 2015-11-13 | 2016-03-30 | 盐城工学院 | 一种基于b/s的在线图书销售系统及其图书查询方法 |
CN106204211A (zh) * | 2016-07-04 | 2016-12-07 | 安徽天达网络科技有限公司 | 一种网上书店系统 |
CN106204215A (zh) * | 2016-07-08 | 2016-12-07 | 沈阳化工大学 | 一种在线图书销售系统 |
-
2018
- 2018-09-11 CN CN201811055511.8A patent/CN109147237B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000043930A1 (en) * | 1999-01-21 | 2000-07-27 | Polygon Network, Inc | Method and apparatus for creation of personalized sub-page of web site |
JP2007323169A (ja) * | 2006-05-30 | 2007-12-13 | Hitachi Software Eng Co Ltd | 書籍購入サポートシステム |
Non-Patent Citations (2)
Title |
---|
北方图书城网上书店系统的研究与实现;林泉;《中国优秀硕士学位论文全文数据库信息科技辑》;20140515(第05期);全文 * |
电子商务网站规划与建设;王士玉;《数字通信世界》;20180601(第06期);第40-41页 * |
Also Published As
Publication number | Publication date |
---|---|
CN109147237A (zh) | 2019-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109147237B (zh) | 图书销售系统 | |
US20070067338A1 (en) | System for supporting introduction/operation of enterprise resource planning software | |
RU2632149C2 (ru) | Система, способ и постоянный машиночитаемый носитель для проверки веб-страниц | |
KR20210045283A (ko) | 이종 플랫폼 간의 자동 연동 방법, 장치 및 시스템 | |
KR102396110B1 (ko) | 이종 쇼핑몰 간의 연동 방법 | |
Markandeya et al. | SAP ABAP: Hands-on test projects with business scenarios | |
Żabicki et al. | Creating a System Based on CRM Solutions that Will Manage the Supplier Base | |
Brummel et al. | Programming Microsoft Dynamics 365 Business Central: Build Customized Business Applications with the Latest Tools in Dynamics 365 Business Central | |
Nguyen | Selling Cakes Online: A Web Design For Managing a Cake Shop Online | |
Williams et al. | Learning Magento 2 Administration | |
Nguyen | Building a software ecosystem for a start-up retail business | |
Miguel et al. | Magento 2-Build World-Class online stores | |
Bach | DEVELOPING AN E-COMMERCE WEBSITE WITH REACT | |
Japar | Iknow Used School Supply Web-based System | |
De Silva | Major Ecommerce Focus on Product Management Future | |
TWM635937U (zh) | 電子商務設備 | |
WO2023201400A1 (en) | Methods and systems for determining structured product data | |
Ameh | DESIGN AND IMPLEMENTATION OF A WEB BASED SHOPPING MANAGEMENT SYSTEM | |
Waqas | ST Attires (An AI Based E-commerce WebApp) | |
Haque | E-commerce web application using PayPal payment gateway | |
Mohammed | Online Art Gallery | |
AMEERDEEN | Electronic Trading and Retail System for Freshpixl Creative Agency | |
KR101587615B1 (ko) | 웹 기반 소프트웨어의 서비스 방법 및 웹 기반 소프트웨어의 공급서버 | |
Swale | KARIAKOO GOES ONLINE: Placing Traditional Tanzanian Market on an Online Marketplace Platform | |
Guarino | Magento 2 Beginners Guide: Discover what you need to know to build your own profitable online stores using the power of Magento 2! |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |