近年来,社会的发展和进步以及人们生活水平的提高,人们饲养宠物的习惯也越来越重视。很多家庭都把宠物视为家庭的重要成员。宠物不仅能给自己作伴,而且在生活中能充当自己精神的支柱,缓解压力、放松心态的伙伴。宠物不同于一般的动物,
如今,随着人们生活水平不断提高,人们的生活在物质满足的基础上,更多的人将生活的重点放在追求精神享受的过程中。于此同时,Internet铺天盖地的普及,使得这样的人纷纷通过Internet的方式去寻找精神的满足。然而养宠物正是人们现在炙手可热的一种精神寄托。对于宠物的热爱让他们的生活更加充满爱心和向往。Internet和宠物商城的两者结合,大大推动了电子商务的发展,促进了该行业的崛起。这正是宠物商城管理系统诞生的缘由。该系统不仅解决了地理隔离的问题,同时也跟上了网络快速发展的脚步,实现爱宠人士足不出户的领养到心仪的爱宠。
宠物商城管理系统是基于浏览器与服务器架构平台,采用跨平台的JAVA语言开发,利用SSM框架进行逻辑控制,MySQL数据库存储数据,最后Tomcat服务器完成发布,系统可在多个环境下运行。
关键词:宠物商城;MySQL;SSM框架
Abstract
In recent years, with the development and progress of society and the improvement of people's living standards, the habit of keeping pets has also been increasingly valued. Many families consider pets as important members of the family. Pets not only provide companionship, but also serve as spiritual pillars in life, relieving stress and relaxing companions. Pets are different from ordinary animals,
Nowadays, with the continuous improvement of people's living standards, their lives are based on material satisfaction, and more and more people focus their lives on the pursuit of spiritual enjoyment. At the same time, the widespread popularity of the Internet has led such people to seek spiritual satisfaction through the Internet. However, keeping pets is now a popular form of spiritual support for people. The love for pets makes their lives more filled with love and longing. The combination of the Internet and pet malls has greatly promoted the development of e-commerce and promoted the rise of the industry. This is precisely the reason why the pet mall management system was born. This system not only solves the problem of geographical isolation, but also keeps up with the rapid development of the internet, enabling pet lovers to adopt their beloved pets without leaving their homes.
The pet mall management system is based on a browser and server architecture platform, developed using cross platform Java language, using the SSM framework for logical control, storing data in a MySQL database, and finally being published on a Tomcat server. The system can run in multiple environments.
Keywords: Pet Mall; MySQL; SSM Framework
目 录
1 绪论
1.1 选题背景
1.2 研究现状
1.3 研究内容
2 系统开发技术
2.1 Java语言
2.2 SSM框架
2.3 MYSQL数据库
3.1可行性研究
3.1.1经济可行性
3.1.2时间可行性
3.1.3操作可行性
3.2系统性能分析
3.2.1系统易用性
3.2.2系统健壮性
3.2.3系统安全性
3.3 系统流程分析
3.4系统功能分析
4 系统设计
4.1系统目标
4.2功能结构设计
4.3数据库设计
4.3.1数据库E-R图
4.3.2 数据库表结构
表buyer (买家)
表cart (购物车)
表collect (收藏)
表comment (评论)
表contact_customer_service (服务预约)
表flower_information (商品信息)
表goods (商品信息)
表goods_type (商品类型)
表hits (用户点击)
表logistics_delivery (物流配送)
表notice (公告)
表order (订单)
表praise (点赞)
表seller (卖家)
表sensitive_vocabulary (敏感词汇)
表slides (轮播图)
5 系统实现
5.1买家功能模块
5.1.1 前台首页界面
5.1.2 用户注册界面
5.1.3 用户登录界面
5.1.4通知公告
5.1.5新闻资讯界面
5.1.6 商品信息界面
5.1.7商城管理界面
5.1.8我的账户界面
5.1.9服务预约界面
5.2 卖家用户功能模块
5.2.1卖家登录界面
5.2.2商城管理界面
5.2.3服务预约界面
5.2.4个人信息管理界面
5.3管理员功能模块
5.3.1管理员登录界面
5.3.2公共管理界面
5.3.3用户管理界面
5.3.4资讯管理界面
5.3.5商城管理界面
6系统测试
6.1 系统测试的类型
6.2 功能测试
6.3 可用性测试
6.4 测试结果分析
结 论
参考文献
致 谢
1 绪论
1.1 研究背景
随着Internet技术和通讯技术的飞速发展,一种新型的商务操作模式一电子商务应运而生。电子商务是指交易各方通过电子方式进行的商业交易,是一种系统的、完整的电子商务运作。电子商务的快速发展以及上网人数的急增,为企业创造了许多网络商机,宠商城管理系统是一个可以无限伸展的电子系统宠物库,它可以容纳无限的宠物或图样乃至于内容检索查询,可以不受时空的限制,宠物不受上架周期的限制,可以提高宠物的销量,为出版社尤其是专业、学术出版社提供窗口支持,该系统的运用也可以推动网上支付、邮政、速递等服务行业的迅速发展。
网上宠物商城是一种高质量,更快捷,更方便的购买宠物方式。首先,宠物商城将所有的宠物信息(包括图片、价格等)清晰的呈现在购买宠物者面前,购买宠物者可以根据上面的信息选择自己想要的宠物。其次,宠物商城由于是在网上交易它不像传统的宠物交易需要大量的库存,宠物商城可以出现零库存,这样就降低了销售成本。从市场角度讲,出版物是重要的消费热点,网络出版和发行的客观需求较强,况且人力资源充足,劳动力价格低,为宠物配送提供了条件。再次,网上交易使一种全天候的交易它可以全天24小时为你服务,并且可以超出本地买到你想要的宠物,这样就使得网上宠物商城的交易突破了时间和空间的限制,实现全球服务。最后,网络的传播速度快,更新也就快,因此新宠物的信息传递变得更迅速灵活,新宠物信息上传后,客户可以立即看到,交易马上就可以从网上进行,从而大大提高了交易的效率。正是由于这些优势,网上宠物商城才能得以迅速地发展。
网上宠物店作为新兴产业,它给我们的宠物销售行业带来了巨大的商机,也给与宠物业相关的产业带来了新的发展机遇,如电子商务的发展、物流业的发展、销售业的改革等。
1.2系统开发意义
宠物在人们的生活起到了很重要的作用,对一部分人来说,或许宠物是一个不可替代的角色。因为宠物有时是人类情感抒发的一个对象,是人们心灵的一个寄托,所以人们对宠物的需求也逐渐增大了。然而对宠物有着很大需要的人,他们或许上班时间比较紧,或许不是很方便到宠物店里面去选购自己心仪的宠物,所以传统的营销方式满足不了他们,那么就需要新的销售方式的产生。很多商家就是看到了这一点,所以他们纷纷建立了自己的一个宠物网上商城,因为在现今Interrnet上商品的零售额已经是迅速地增长了。原因在于通过Internet即使是小公司也可以接触到世界上任何地方的客户;在Internet上浏览的人会发现在线订购商品比其他任何方法都方便得多;更重要的是,一旦电子商务站点启动并运行起来,获取订单处理的成本与设置实体店铺的成本相比,实际上会几乎接近于零。所以宠物网上商城的诞生不仅满足了部分客户的需要,同时也使得商家寻找到了新的更好的销售方式。
本系统实现了一般的电子商务所具备的功能,如商品浏览,购物车,在线购买,后台管理等等,利用这些功能可以对宠物销售信息进行较好的管理,同时也会使得客人很方便的就能购得自己想要的宠物。电子商务将会使人类社会经济一体化,不断地推动着经济的发展,从而也不断地推动人类社会的发展,使我们的生活水平提升到另外一个高层次上。
1.3 国内外研究现状
宠物商城管理系统是指以互联网技术为基础,为消费者提供宠物购买、宠物医疗服务和宠物社交等服务的平台。随着人们对宠物的需求不断增加,国内的宠物商城系统也得到了快速发展。
目前,国内的宠物商城系统主要包括两种类型:一种是以电商为主的网上购物平台,如京东、淘宝等;另一种是以线下实体店为主,提供线上购物服务的大型连锁宠物商店,如爱宠网、宠物之家等。
在技术方面,国内的宠物商城系统主要采用云计算、大数据、人工智能等先进技术,以提高用户体验和服务质量。例如,爱宠网通过大数据分析用户需求,为用户推荐更加符合其需求的产品和服务;同时,还提供了在线咨询、预约挂号等服务,方便用户进行宠物医疗服务。
在市场方面,国内的宠物商店系统已经成为了一个庞大的产业链。据统计,2019年中国宠物市场规模已经达到了2000亿元人民币,并且还在不断增长中。这也促使了越来越多的企业进入到这个领域,竞争也越来越激烈。
国外研究现状:
此外,国外的宠物商城系统还注重用户体验和服务质量。例如,美国的Petco公司推出了"Petco 24/7"服务,提供24小时在线购物、咨询服务等。英国的Petsat Home公司则通过建立宠物社区、提供免费培训等方式,为用户提供更加全面的服务。
在营销方面,国外的宠物商店系统也采用了多种手段。例如,美国的 Petco公司通过社交媒体平台与用户互动,提高品牌知名度;英国的Pets at Home公司则通过赞助活动、广告等方式扩大品牌影响力。在营销方面,国外的宠物商店系统采用了多种手段来吸引顾客和提高品牌知名度。其中,社交媒体平台是其中一个重要的手段。例如,美国的Petco公司通过Facebook、Instagram 等社交媒体平台与用户互动,发布有关宠物健康、营养和美容等方面的信息,同时还会定期举办线上活动和比赛,吸引用户参与并提高品牌知名度。
此外,赞助活动也是扩大品牌影响力的一种方式。例如,英国的Pets at Home公司曾经赞助过多个宠物展览和活动,如英国皇家兽医协会的年度会议等,这些活动不仅能够让公司展示自己的产品和服务,还能够让更多的人了解该公司的品牌形象和价值观。
除了社交媒体和赞助活动之外,广告也是扩大品牌影响力的重要手段之一。例如,美国的Petco公司曾经在电视上播放过多个广告,向观众展示其产品和服务的优势,并强调公司的使命和价值观。
总之,国外的宠物商城系统采用了多种手段来吸引顾客和提高品牌知名度,这些手段包括社交媒体平台、赞助活动和广告等。这些手段的使用不仅能够提高企业的销售额和市场份额,还能够增强企业的品牌形象和社会责任感。
总之,国外的宠物商城系统在市场规模、技术应用、用户体验和营销策略等方面都有着较为成熟的体系。这些成功的经验可以为国内的宠物商店系统提供借鉴和参考。
1.4 研究内容
按照设计开发一个系统的常用流程来描述系统,可以把系统分成分析阶段,设计阶段,实现阶段,测试阶段。所以在编写系统的说明文档时,根据系统所处的阶段来描述系统的内容。
绪论:这是对选题的背景,研究现状等内容做出介绍。
系统开发技术:这是对系统即将使用的技术,包括使用的工具,编程的语言等做出介绍。
系统分析:这是对系统做出分析,包括投资前期必备的可行性分析,包括对用户调研获取的需求,包括系统运行具备的性能等内容做出介绍。
系统设计:这是对系统进行设计,包括运用绘图工具设计的系统功能结构,包括设计的在数据库中要创建的数据表的存储结构等内容做出介绍。
系统实现:这是对系统进行编码实现。包括实现的系统各个模块的运行效果等内容做出介绍。
系统测试:这是对编制的系统进行测试。包括功能的测试等内容做出介绍。
2 系统开发技术
这部分内容主要介绍本系统使用的技术,包括使用的工具,编程的语言等内容。
2.1 Java语言
Java语言自公元1995年至今,已经超过25年了,依然在软件开发上面有很大的市场占有率。当年Sun公司发明Java就是为了发展一门跨平台的高级编程语言,让程序开发人员专注于程序开发过程,不需要关注服务器是属于哪个平台,因为跨平台的特性让语言发展的很迅速。Java的发展,吸收了C++这些语言的优点,因为新生事物一般就是解决老旧事物一些痛点的,虽然Java也有很多缺点,但是起码也算是一种发展方向。学习Java不需要太多的指针这些理念,也不用学习太过复杂的数据结构理论,比如什么堆栈这些概念,除非某些特殊行业对这些要求相当严谨之外,一般用Java开发程序是不用考虑各种各样的数据结构的。因为Java属于一种强类型语言,已经对各种数据定义了各种相应的类型。Java对数据类型定义分为两大种,一种是基本类型,含有8个基本属性,另一个是包装类。基本类和包装类从根本的定义上,都有很明显的区分,计算机运行也会有很明显的差别,如果用错了会编译错误还会影响运行效果的,Java的各种优点只需要按部就班的学习使用即可。
2.2 SSM框架
本课题开发的应用程序主要采用的框架技术是SSM,是Java语言的一种框架集合的简称,目前在Java语言方面,主要有两大分支,一个是主攻Java语言,学习了Java基础之后,会有很多Java进阶框架进行学习,主要是针对应用程序后台进行开发设计,另一方面是转行去学习安卓语言,主要是做安卓的前端设计方面,虽然也是Java语言,但是主要去学习安卓平台的各种架构和框架了。但是不管前端应用如何,SSM框架主要是针对服务端方面进行开发的一个主流框架集合。针对于传统的SSH框架的臃肿,配置繁琐,不管是开发还是二次开发都会造成时间上大量的浪费,并且学习上面也不能有效衔接,需要去适应框架的各种设计,而框架设计比较死板,容易出错。SSM框架是当前最流行的,告别了繁琐的配置,让配置更加灵活,让数据操作更加方便,选择SSM框架进行开发感觉是很合适的。
2.3 MYSQL数据库
关系型数据库设计,对于数据库字段类型的设计以及字段长度的设计,都无时无刻的影响着后续程序开发后大量数据操作的运行效率。关系型数据库对不同的字段类型都有解释,本着课题所需的应用程序开发,寻找最适合的关系型数据库,基本上都有考虑。关系型数据库发展至今也有几十年了,优胜劣汰导致到现在还依然存在的关系型数据库其实并不多,基本上也都能满足应用程序的功能所需,所以要从其他方面来进行考虑数据库的选择。从安装维护上面考虑,SQL Server数据库有好几个G的安装包,并且安装过程中会安装很多不需要的功能,非常占用资源。Oracle数据库不比SQL Server安装包小,并且安装也会出现很多问题,对于课题所需来讲,没必要这么麻烦,并且安装还需要各种激活,只有MySQL数据库完全适合,几十兆大小的安装包,运行起来压力不大,毕竟开发电脑上还有很多其他有用的东西,而且完全免费,所以选择了MySQL数据库作为首选数据库。
这部分内容虽然在开发流程中处于最开始的环节,但是它对接下来的设计和实现起着重要的作用,因为系统分析结果的好坏,将直接影响后面环节的开展。
3.1可行性研究
影响系统开发的因素有很多,比如开发成本高就不适合开展,或者是开发时间超过了预期,也不适合开展等等。所以,在正式作出开发决策前,研究系统可行性问题,从经济,时间,操作等角度论证系统是否可以开展。
3.1.1经济可行性
宠物商城可以简化工作流程,提供信息处理功能,并可以长期保存数据,在后期的数据查询与编辑中耗时少,提升信息管理效率,其带来的收益比较可观。对于本系统开发,无论是开发需要使用的计算机,还是开发工具等投入的成本很低,计算机是机房的电脑,开发工具是从网上下载安装的,并没有收取费用。
3.1.2时间可行性
宠物商城是作为本人毕设项目的一个作品,学院也充分预留了制作时间,并且在每个时间段,都安排了相应的任务,所以根据这个时间安排开展工作,是可以对本系统进行设计完成的。
3.1.3操作可行性
随着电脑的普及,已经有很多人可以独立操作电脑了。而本系统就是在配置了运行环境的电脑上运行,其功能简单,省去了很多繁琐的操作逻辑,使用者通过页面导航可以直接进入功能操作区,所以稍微懂点电脑的人,都可以轻松完成系统的使用。
综上所述,本系统可以开展接下来的工作了。
3.2系统性能分析
为了降低本系统在实际使用中的出错率,就需要分析系统具备的性能。常见的可以评估系统的性能的指标有安全性,易用性,健壮性等。
3.2.1系统易用性
系统提供的信息和服务都有特定的用户群,所以,一个容易操作的系统相比一个不方便使用的系统来讲,用户还是更加青睐于使用方便的系统。所以系统具备易用性就显得非常重要。
3.2.2系统健壮性
系统在与用户进行交互过程中,面对用户的误操作行为,系统应该有相应的处理这种问题的反馈机制,而不是进入系统崩溃状态。系统中设置了很多的功能,在应对系统中某个功能出现异常情况时,系统的其它功能还是可以让用户使用。这就是系统健壮性的体现。
3.2.3系统安全性
保存在系统里面的数据,都是比较重要的系统资源,一旦这些资源泄露,不仅会有财产损失,还会丧失很多客户。所以,系统里面的数据要随时都处于安全的环境中,因此就需要采取措施保证数据安全,比如设置登录功能,使用安全验证技术引导条件用户进入指定页面,而让非条件用户停留在登录页面,不能访问系统。
3.3 系统流程分析
软件开发设计的思想始终贯穿本系统,其开发流程见下图。前期需要进行功能分析,功能设计,还有对系统后台支持数据库的设计,利用编码技术对设计的系统进行实现,然后检测和完善。
图3.1系统开发流程图
访问者之所以可以访问宠物商城,主要是其数据库有该访问者的记录信息,这个记录是通过注册进行写入的数据。注册流程见下图。每当访问者进行宠物商城注册时,其登记的每条记录都会在系统后台进行逐个判断。这个判断规则是提前设置的。一旦该访问者的登记信息在数据库中保存,即代表该访问者成为宠物商城中的一份子。
图3.2 注册流程图
访问者操作系统,前提是需要验证身份,而登录功能的设置就是把本系统的用户引导进入后台操作区,把不是本系统的用户拒之门外。其流程见下图。
图3.3 登录流程图
3.4系统功能分析
在明确系统的用途,以及系统的目标用户群后,可以对本系统的功能进行设置,可以获取调研用户对功能的要求,也可以对市场上同类系统进行分析和总结,得出本系统的功能。
宠物商城设置了管理员权限,其用例图见下图。管理员登录进入本人后台之后,管理物流信息管理、售后信息管理、服务预约管理、服务类型管理、预约信息管理、系统管理、通知公告管理、资讯管理(新闻资讯、新闻分类)、商城管理(商品信息、分类列表、订单列表、订单配送)系统用户管理等。
图3.4 管理员用例图
宠物商城设置了普通用户权限,其用例图见下图。普通用户查看首页,通知公告,新闻资讯,商品信息,商城管理(我的购物车、我的订单、我的地址),服务预约,个人中心(个人首页、物流信息、售后信息、订单配送、收藏),查看不同状态的订单等。
4 系统设计
当前,系统的类型有很多,从系统呈现的内容来看,系统的类型有社交类,有商业类,有新闻类等。那么,在众多系统类型中,先明确将要设计的系统的类型才是系统设计的首要工作,然后在此基础上明确系统的用户群,功能等,针对这些信息设计出具有独特体验和视觉的系统。如此才能让系统比较具有特色,也能够在众多相似系统中给用户留下深刻印象。
4.1系统目标
本系统在功能制定上,严格参照用户的要求,但是在设计本系统时,也要满足易操作,使用便利的设计要求。由此,设计出一个规范化并且符合用户需求的系统,一定要达到下述系统目标。
第一个系统目标:用户与系统之间的操作方式是基于人机对话,可视化界面的设计除了美观性之外,也具备友好性。可视化界面提供的各类信息符合准确性,可靠性的要求,并能够方便用户灵活查看。
第二个系统目标:用户与系统交互产生的数据,要严格规范的保存在数据库里,无论是后期管理人员查找与管理,都要确保数据安全。
第三个系统目标:实现用户需求的功能。根据对用户的调查得出的功能需求,完成宠物商城的设计与实现。
第四个系统目标:在必要环节,对用户登记的数据进行检查,包括数据长度,以及数据输入类型等的检查,发现错误及时反馈,引导用户规范登记数据。常见的有密码修改,注册登录,用户资料填写等环节的数据核验。
第五个系统目标:设计开发本系统,需要尽最大努力,在系统具备易操作的特点外,也要求系统于后期使用中,维护方便,让系统具备易维护的特点。
第六个系统目标:本系统在交付用户使用时,可以达到运行稳定的目标,另外,系统具备安全性,也符合可靠性的条件,用户可以放心使用。
4.2功能结构设计
前面所做的功能分析,只是本系统的一个大概功能,这部分需要在此基础上进行各个模块的详细设计。
设计的管理员的详细功能见下图,管理员登录进入本人后台之后,管理物流信息管理、售后信息管理、服务预约管理、服务类型管理、预约信息管理、系统管理、通知公告管理、资讯管理(新闻资讯、新闻分类)、商城管理(商品信息、分类列表、订单列表、订单配送)系统用户管理等。
图4.1 管理员功能结构图
设计的普通用户的详细功能见下图,普通用户查看首页,通知公告,新闻资讯,商品信息,商城管理(我的购物车、我的订单、我的地址),服务预约,个人中心(个人首页、物流信息、售后信息、订单配送、收藏),查看不同状态的订单等。
图4.2 普通用户功能结构
4.3数据库设计
相比非关系型数据库来说,目前市场上使用率比较高,并且易于维护的数据库,当数关系型数据库了。这个数据库主要是基于关系模型的方式来对数据信息进行组织。也就是常见的二维表模型。可以说二维表和二维表之间的相互联系就构成了关系型数据库。
4.3.1数据库E-R图
为了更好地保存宠物商城产生的数据,就需要在数据库的设计阶段对E-R模型进行建立,以及完成数据库中的表结构的创建。之所以要单独完成数据库的设计,主要有以下几点原因:
第一点:防止代码冗余;
第二点:防止占用过多内存;
第三点:提升数据库的整体性能,方便程序开发以及数据更新;
第四点:保证数据的完整性;
本部分内容主要在于建立本系统的E-R模型,需要先收集数据,然后根据数据库实现的思路,对用户的需求进行分析,这期间需要对实体,属性,还有关系进行标识,为绘制E-R模型做好充足准备。同时,在作图中,也要注意作图规范,
(1)设计的各实体间关系见下图。
图4.3 实体间关系E-R图
4.3.2 数据库表结构
为了设计出结构合理,性能优良的数据库,在设计数据库时,需要遵循三大范式:
第一范式:确保数据表当中的每列所代表的字段值都不能再进行分解了;
第二范式:在满足第一范式基础上,让数据表中每列与主键相关;
第三范式:在满足第二范式基础上,确保每列数据直接与主键相关,不是间接相关。
从上面的表述中可以看出,这三大范式,在等级上还是有区分的,最低等级的就数第一范式,最高等级的就是第三范式,趋于两者中间的是第二范式。总之,数据库设计按照这三大范式进行,可以简化设计过程,并且还会减少数据冗余,对于数据检索效率的提升也很有帮助。
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | address_id | int | 10 | 0 | N | Y | 收货地址: | |
2 | name | varchar | 32 | 0 | Y | N | 姓名: | |
3 | phone | varchar | 13 | 0 | Y | N | 手机: | |
4 | postcode | varchar | 8 | 0 | Y | N | 邮编: | |
5 | address | varchar | 255 | 0 | N | N | 地址: | |
6 | user_id | mediumint | 8 | 0 | N | N | 用户ID:[0,8388607]用户获取其他与用户相关的数据 | |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
9 | default | bit | 1 | 0 | N | N | 0 | 默认判断 |
表after_sales_information (售后信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | after_sales_information_id | int | 10 | 0 | N | Y | 售后信息ID | |
2 | order_number | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | product_name | varchar | 64 | 0 | Y | N | 商品名称 | |
4 | user_information | int | 10 | 0 | Y | N | 0 | 用户信息 |
5 | product_quantity | varchar | 64 | 0 | Y | N | 商品数量 | |
6 | after_sales_type | varchar | 64 | 0 | Y | N | 售后类型 | |
7 | after_sales_reasons | text | 65535 | 0 | Y | N | 售后原因 | |
8 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
9 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
表appointment_information (预约信息)
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | appointment_information_id | int | 10 | 0 | N | Y | 预约信息ID | |
2 | service_name | varchar | 64 | 0 | Y | N | 服务名称 | |
3 | service_type | varchar | 64 | 0 | Y | N | 服务类型 | |
4 | service_price | varchar | 64 | 0 | Y | N | 服务价格 | |
5 | user_information | int | 10 | 0 | Y | N | 0 | 用户信息 |
6 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
7 | contact_phone_number | varchar | 64 | 0 | Y | N | 联系电话 | |
8 | appointment_frequency | varchar | 64 | 0 | Y | N | 预约次数 | |
9 | appointment_time | datetime | 19 | 0 | Y | N | 预约时间 | |
10 | appointment_content | text | 65535 | 0 | Y | N | 预约内容 | |
11 | examine_state | varchar | 16 | 0 | N | N | 未审核 | 审核状态 |
12 | examine_reply | varchar | 16 | 0 | Y | N | 审核回复 | |
13 | pay_state | varchar | 16 | 0 | N | N | 未支付 | 支付状态 |
14 | pay_type | varchar | 16 | 0 | Y | N | 支付类型: 微信、支付宝、网银 | |
15 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
16 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | auth_id | int | 10 | 0 | N | Y | 授权ID: | |
2 | user_group | varchar | 64 | 0 | Y | N | 用户组: | |
3 | mod_name | varchar | 64 | 0 | Y | N | 模块名: | |
4 | table_name | varchar | 64 | 0 | Y | N | 表名: | |
5 | page_title | varchar | 255 | 0 | Y | N | 页面标题: | |
6 | path | varchar | 255 | 0 | Y | N | 路由路径: | |
7 | position | varchar | 32 | 0 | Y | N | 位置: | |
8 | mode | varchar | 32 | 0 | N | N | _blank | 跳转方式: |
9 | add | tinyint | 3 | 0 | N | N | 1 | 是否可增加: |
10 | del | tinyint | 3 | 0 | N | N | 1 | 是否可删除: |
11 | set | tinyint | 3 | 0 | N | N | 1 | 是否可修改: |
12 | get | tinyint | 3 | 0 | N | N | 1 | 是否可查看: |
13 | field_add | text | 65535 | 0 | Y | N | 添加字段: | |
14 | field_set | text | 65535 | 0 | Y | N | 修改字段: | |
15 | field_get | text | 65535 | 0 | Y | N | 查询字段: | |
16 | table_nav_name | varchar | 500 | 0 | Y | N | 跨表导航名称: | |
17 | table_nav | varchar | 500 | 0 | Y | N | 跨表导航: | |
18 | option | text | 65535 | 0 | Y | N | 配置: | |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | cart_id | int | 10 | 0 | N | Y | 购物车ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | img | varchar | 255 | 0 | N | N | 0 | 图片: |
4 | user_id | int | 10 | 0 | N | N | 0 | 用户ID: |
5 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
6 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
7 | state | int | 10 | 0 | N | N | 0 | 状态:使用中,已失效 |
8 | price | double | 9 | 2 | N | N | 0.00 | 单价: |
9 | price_ago | double | 9 | 2 | N | N | 0.00 | 原价: |
10 | price_count | double | 11 | 2 | N | N | 0.00 | 总价: |
11 | num | int | 10 | 0 | N | N | 1 | 数量: |
12 | goods_id | mediumint | 8 | 0 | N | N | 商品id:[0,8388607] | |
13 | type | varchar | 64 | 0 | N | N | 未分类 | 商品分类: |
14 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]用于产品规格描述 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | collect_id | int | 10 | 0 | N | Y | 收藏ID: | |
2 | user_id | int | 10 | 0 | N | N | 0 | 收藏人ID: |
3 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
4 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
5 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
6 | title | varchar | 255 | 0 | Y | N | 标题: | |
7 | img | varchar | 255 | 0 | Y | N | 封面: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | goods_id | mediumint | 8 | 0 | N | Y | 产品id:[0,8388607] | |
2 | title | varchar | 125 | 0 | Y | N | 标题:[0,125]用于产品和html的<title>标签中 | |
3 | img | text | 65535 | 0 | Y | N | 封面图:用于显示于产品列表页 | |
4 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]用于产品规格描述 | |
5 | price_ago | double | 8 | 2 | N | N | 0.00 | 原价:[1] |
6 | price | double | 8 | 2 | N | N | 0.00 | 卖价:[1] |
7 | sales | int | 10 | 0 | N | N | 0 | 销量:[0,1000000000] |
8 | inventory | int | 10 | 0 | N | N | 0 | 商品库存 |
9 | type | varchar | 64 | 0 | N | N | 商品分类: | |
10 | hits | int | 10 | 0 | N | N | 0 | 点击量:[0,1000000000]访问这篇产品的人次 |
11 | content | longtext | 2147483647 | 0 | Y | N | 正文:产品的主体内容 | |
12 | img_1 | text | 65535 | 0 | Y | N | 主图1: | |
13 | img_2 | text | 65535 | 0 | Y | N | 主图2: | |
14 | img_3 | text | 65535 | 0 | Y | N | 主图3: | |
15 | img_4 | text | 65535 | 0 | Y | N | 主图4: | |
16 | img_5 | text | 65535 | 0 | Y | N | 主图5: | |
17 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
18 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
19 | customize_field | text | 65535 | 0 | Y | N | 自定义字段 | |
20 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
21 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
22 | source_id | int | 10 | 0 | N | N | 0 | 来源ID: |
23 | user_id | int | 10 | 0 | Y | N | 0 | 添加人 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | type_id | int | 10 | 0 | N | Y | 商品分类ID: | |
2 | father_id | smallint | 5 | 0 | N | N | 0 | 上级分类ID:[0,32767] |
3 | name | varchar | 255 | 0 | Y | N | 商品名称: | |
4 | desc | varchar | 255 | 0 | Y | N | 描述: | |
5 | icon | varchar | 255 | 0 | Y | N | 图标: | |
6 | source_table | varchar | 255 | 0 | Y | N | 来源表: | |
7 | source_field | varchar | 255 | 0 | Y | N | 来源字段: | |
8 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
9 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | logistics_delivery_id | int | 10 | 0 | N | Y | 物流配送ID | |
2 | order_number | varchar | 64 | 0 | Y | N | 订单号 | |
3 | product_name | varchar | 64 | 0 | Y | N | 商品名称 | |
4 | purchase_quantity | varchar | 64 | 0 | Y | N | 购买数量 | |
5 | total_transaction_amount | double | 11 | 2 | Y | N | 0.00 | 交易总额 |
6 | the_date_of_issuance | date | 10 | 0 | Y | N | 发货日期 | |
7 | delivery_number | varchar | 30 | 0 | Y | N | 配送订单 | |
8 | ordinary_users | int | 10 | 0 | Y | N | 0 | 普通用户 |
9 | shipping_address | varchar | 64 | 0 | Y | N | 收货地址 | |
10 | delivery_status | varchar | 64 | 0 | Y | N | 配送状态 | |
11 | signing_status | varchar | 64 | 0 | Y | N | 签收状态 | |
12 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
13 | contact_name | varchar | 255 | 0 | Y | N | 联系人名字 | |
14 | merchant_id | int | 10 | 0 | Y | N | 商家id | |
15 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
16 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | logistics_information_id | int | 10 | 0 | N | Y | 物流信息ID | |
2 | order_number | varchar | 64 | 0 | Y | N | 订单编号 | |
3 | product_name | varchar | 64 | 0 | Y | N | 商品名称 | |
4 | user_information | int | 10 | 0 | Y | N | 0 | 用户信息 |
5 | product_quantity | int | 10 | 0 | Y | N | 0 | 商品数量 |
6 | logistics_status | varchar | 64 | 0 | Y | N | 物流状态 | |
7 | logistics_phone_number | varchar | 64 | 0 | Y | N | 物流电话 | |
8 | logistics_description | text | 65535 | 0 | Y | N | 物流描述 | |
9 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
10 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
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 | 更新时间: |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | order_id | int | 10 | 0 | N | Y | 订单ID: | |
2 | order_number | varchar | 64 | 0 | Y | N | 订单号: | |
3 | goods_id | mediumint | 8 | 0 | N | N | 商品id:[0,8388607] | |
4 | title | varchar | 32 | 0 | Y | N | 商品标题: | |
5 | img | varchar | 255 | 0 | Y | N | 商品图片: | |
6 | price | double | 10 | 2 | N | N | 0.00 | 价格: |
7 | price_ago | double | 10 | 2 | N | N | 0.00 | 原价: |
8 | num | int | 10 | 0 | N | N | 1 | 数量: |
9 | price_count | double | 8 | 2 | N | N | 0.00 | 总价: |
10 | norms | varchar | 255 | 0 | Y | N | 规格: | |
11 | type | varchar | 64 | 0 | N | N | 未分类 | 商品分类: |
12 | contact_name | varchar | 32 | 0 | Y | N | 联系人姓名: | |
13 | contact_email | varchar | 125 | 0 | Y | N | 联系人邮箱: | |
14 | contact_phone | varchar | 11 | 0 | Y | N | 联系人手机: | |
15 | contact_address | varchar | 255 | 0 | Y | N | 收件地址: | |
16 | postal_code | varchar | 9 | 0 | Y | N | 邮政编码: | |
17 | user_id | int | 10 | 0 | N | N | 0 | 买家ID: |
18 | merchant_id | mediumint | 8 | 0 | N | N | 0 | 商家ID: |
19 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
20 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
21 | description | varchar | 255 | 0 | Y | N | 描述:[0,255]用于产品规格描述 | |
22 | state | varchar | 16 | 0 | N | N | 待付款 | 订单状态:待付款,待发货,待签收,已签收,待退款,已退款,已拒绝,已完成 |
23 | remark | text | 65535 | 0 | Y | N | 订单备注 | |
24 | delivery_state | varchar | 16 | 0 | Y | N | 未配送 | 发货状态:未配送,已配送 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | product_information_id | int | 10 | 0 | N | Y | 商品信息ID | |
2 | product_remarks | varchar | 64 | 0 | Y | N | 商品备注 | |
3 | cart_title | varchar | 125 | 0 | Y | N | 标题:[0,125]用于产品html的标签中 | |
4 | cart_img | text | 65535 | 0 | Y | N | 封面图:用于显示于产品列表页 | |
5 | cart_description | varchar | 255 | 0 | Y | N | 描述:[0,255]用于产品规格描述 | |
6 | cart_price_ago | double | 8 | 2 | N | N | 0.00 | 原价:[1] |
7 | cart_price | double | 8 | 2 | N | N | 0.00 | 卖价:[1] |
8 | cart_inventory | int | 10 | 0 | N | N | 0 | 商品库存 |
9 | cart_type | varchar | 64 | 0 | N | N | 未分类 | 商品分类: |
10 | cart_content | longtext | 2147483647 | 0 | Y | N | 正文:产品的主体内容 | |
11 | cart_img_1 | text | 65535 | 0 | Y | N | 主图1: | |
12 | cart_img_2 | text | 65535 | 0 | Y | N | 主图2: | |
13 | cart_img_3 | text | 65535 | 0 | Y | N | 主图3: | |
14 | cart_img_4 | text | 65535 | 0 | Y | N | 主图4: | |
15 | cart_img_5 | text | 65535 | 0 | Y | N | 主图5: | |
16 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
17 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | regular_users_id | int | 10 | 0 | N | Y | 普通用户ID | |
2 | user_name | varchar | 64 | 0 | Y | N | 用户姓名 | |
3 | user_gender | varchar | 64 | 0 | Y | N | 用户性别 | |
4 | contact_phone_number | varchar | 16 | 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 | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | sensitive_vocabulary_id | int | 10 | 0 | N | Y | 敏感词汇ID | |
2 | sensitive_vocabulary | 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 | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | service_appointment_id | int | 10 | 0 | N | Y | 服务预约ID | |
2 | service_name | varchar | 64 | 0 | Y | N | 服务名称 | |
3 | service_type | varchar | 64 | 0 | Y | N | 服务类型 | |
4 | service_price | int | 10 | 0 | Y | N | 0 | 服务价格 |
5 | cover_photo | varchar | 255 | 0 | Y | N | 封面图片 | |
6 | service_introduction | longtext | 2147483647 | 0 | Y | N | 服务介绍 | |
7 | hits | int | 10 | 0 | N | N | 0 | 点击数 |
8 | praise_len | int | 10 | 0 | N | N | 0 | 点赞数 |
9 | recommend | int | 10 | 0 | N | N | 0 | 智能推荐 |
10 | create_time | datetime | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间 |
11 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | service_type_id | int | 10 | 0 | N | Y | 服务类型ID | |
2 | service_type | 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 | 更新时间 |
编号 | 名称 | 数据类型 | 长度 | 小数位 | 允许空值 | 主键 | 默认值 | 说明 |
1 | slides_id | int | 10 | 0 | N | Y | 轮播图ID: | |
2 | title | varchar | 64 | 0 | Y | N | 标题: | |
3 | content | varchar | 255 | 0 | Y | N | 内容: | |
4 | url | varchar | 255 | 0 | Y | N | 链接: | |
5 | img | varchar | 255 | 0 | Y | N | 轮播图: | |
6 | hits | int | 10 | 0 | N | N | 0 | 点击量: |
7 | create_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 创建时间: |
8 | update_time | timestamp | 19 | 0 | N | N | CURRENT_TIMESTAMP | 更新时间: |
5 系统实现
在此部分内容中,主要通过系统功能的运行效果图展示前面设计的最终结果。系统实现对编制人员的技术能力有较高要求,因为需要他们使用编程的方式去实现系统设计的方案。
在宠物商城的前台首页界面上采用了上+中+下的方式来布局界面,最右上角是登录+注册+搜索这三个链接,下面依次是导航栏+轮播图以及下面的公告栏,下面依次是推荐的商品信息展示,其主界面展示如下图5-1所示。
图5-1 前台首页界面图
用户点击首页左上角“注册”按钮进入注册页面,填写个人账号+设置密码+确认密码+昵称+邮箱+身份+姓名等信息后点击“注册”,点击“注册”按钮后系统会验证两次输入的密码是否一致,验证输入的账户名和数据库表中已经注册的账户名是否重复,验证通过后即可注册成功。其用户注册界面展示如下图5-2所示。
图5-2用户注册界面图
注册关键代码如下所示。
public Map<String, Object> signUp(HttpServletRequest request) throws IOException {
Map<String, String> query = new HashMap<>();
Map<String,Object> map = service.readBody(request.getReader());
query.put("username",String.valueOf(map.get("username")));
List list = service.selectBaseList(service.select(query, new HashMap<>()));
if (list.size()>0){
return error(30000, "用户已存在");
}
map.put("password",service.encryption(String.valueOf(map.get("password"))));
service.insert(map);
return success(1);
}
用户注册成功后可以通过输入用户名、密码进行登录,当用户输入完信息并点击“登录”按钮后,系统会验证输入的信息是否完整和准确,验证通过后即可完成登录,用户登录界面如下图5-3所示。
图5-3用户登录界面图
登录关键代码如下所示。
@PostMapping("login")
public Map<String, Object> login(@RequestBody Map<String, String> data, HttpServletRequest httpServletRequest) {
log.info("[执行登录接口]");
String username = data.get("username");
String email = data.get("email");
String phone = data.get("phone");
String password = data.get("password");
List resultList = null;
QueryWrapper wrapper = new QueryWrapper<User>();
Map<String, String> map = new HashMap<>();
当用户点击上方“通知公告”这个按钮,可以查看通知公告、网站介绍等信息,通知公告界面如下图5-4所示。
图5-4 通知公告界面图
当用户点击首页上方的“新闻资讯”后将会进入新闻资讯界面查看相关资讯信息,选择想要看的资讯,点击进入到资讯详情界面,在详情界面可以进行点赞、收藏和发表评论这些操作,新闻资讯界面如下图5-5所示。
图5-5新闻资讯界面图
当用户点击首页上方的“商品信息”钮将页面可查看卖家发布的商品列表信息,支持通过关键词进行搜索,或通过筛选工具筛选自己想要查看的商品信息,进入到商品信息的展示界面,在展示界面可以查看宠物的图片、价格、详情、评论等信息,同时可以进行点赞、加入购物车、发表评论、完成在线购买支付等操作,商品信息的展示页面如图5-6所示。
图5-6 商品信息界面图
当用户点击首页上方的“商城管理”后将会进入商城管理界面,“商城管理”下面可以查看我的购物车、我的订单,我的地址信息。商城管理界面如下图5-7所示。
图5-7商城管理界面图
当用户点击首页左上角“用户”这个按钮,下面会出现“我的账户”、“个人中心”和“退出”这三个子菜单,点击“我的账户”可以对个人的资料、登录密码的信息进行修改,点击“个人中心”可查看个人首页、订单配送、收藏列表信息,点击“退出”按钮即可退出系统登录。我的账户界面如下图5-8所示。
图5-8 我的账户管理界面图
当用户点击首页上方的“服务预约”后可通过搜索服务名称或服务类型进行查看所有的服务项目,点击任一服务项目可查看详情信息,可进行点赞、收藏、预约等介绍。服务预约列表界面如下图5-9所示。
图5-9 服务预约界面图
5.1.10 预约服务界面
当用户在服务预约详情页面点击“预约”后输入预约次数、预约时间和预约内容进行提交,由管理员进行审核回复,预约服务提交界面如图5-10所示。
图5-10 预约服务提交界面
输入用户名、密码和验证码进行登录,当用户输入完信息并点击“登录”按钮后,系统会验证输入的信息是否完整和准确,验证通过后即可完成登录。管理员登录界面如下图5-11所示。
图5-11管理员登录界面图
管理员在“系统管理”界面可以对轮播图进行查看和管理,在轮播图界面点击“新增”按钮进入新增页面、填写标题、上传图片即可完成轮播图的添加,还可以对轮播图进行查询、重置、删除操作。系统管理界面如下图5-12所示。
图5-12系统管理界面图
管理人员在“系统用户”这一菜单中可以对注册的普通用户和管理员进行管理。界面如下图5-13所示。
图5-13系统用户管理界面图
管理人员在“资源管理”这一菜单中可以对新闻资讯和新闻分类进行管理。在“新闻分类”界面点击新增进入新增页面填写类型名称完成新闻分类信息的添加。在“新闻资讯”界面点击新增进入新增页面上传商品图片并填写标题、标签、分类、封面图、描述等信息完成新闻资讯信息的添加。在资源管理界面可以查看某列表中的新闻资讯的标题、封面图、新增时间、更新时间、点击后面的“详情”可查看该资讯的详细内容。管理员还可以对新闻资讯和新闻分类进行查询、重置、删除操作。以新闻资讯新增为例,其界面如下图5-14所示。
图5-14新闻资讯新增管理界面图
资讯管理关键代码如下:
@PostMapping("/add")
@Transactional
public Map<String, Object> add(HttpServletRequest request) throws IOException {
service.insert(service.readBody(request.getReader()));
return success(1);
}
@Transactional
public Map<String, Object> addMap(Map<String,Object> map){
service.insert(map);
return success(1);
}
5.2.5商城管理界面
管理人员在“商城管理”这一菜单中可以对商品信息、分类列表、订单列表和订单配送进行查看、添加、重置或删除等操作。
在“商品信息”界面可查看封面图、主图图片、输入标题、描述、原价、卖价、商品库存、商品分类等信息,可以进行查询、添加、重置或删除等操作。其界面如下图5-15所示。
图5-15商品信息管理界面图
在“分类列表”界面点击“新增”进入页面填写分类名称完成分类列表的信息添加,还可以进行查询、重置、删除操作。界面如下图5-16所示。
图5-16分类列表管理界面图
在“订单列表”可查看订单号、商品名称、购买数量、联系人地址、详情等相关信息,还可以进行配送、查询、重置、删除操作。其管理界面如下图5-17所示。
图5-17订单列表管理界面图
在“订单配送”界面可以查看订单号、购买数量、商品名称、发货日期、联系人等相关信息,点击后面的“详情”按钮可查看订单的详细内容并可以对配送状态、签收状态进行状态修改,还可以进行查询、重置、删除操作。其管理界面如下图5-18所示。
图5-18订单配送管理界面图
5.2.6服务预约管理
管理员在“服务预约管理”这一栏可查看系统服务预约项目信息,在“服务预约添加”一栏编辑服务名称、服务类型、服务价格、封面图片、服务介绍等信息进行添加,添加服务预约信息界面如下图5-19所示。
图5-19添加服务预约信息界面图
5.2.7预约信息管理
管理员在“预约信息”列表可对用户的预约信息进行审核回复操作,预约信息审核回复页面如下图5-20所示。
图5-20预约信息审核回复界面图
5.2.8物流信息管理
管理员在“物流信息添加”页面,对用户未发货的订单进行添加订单编号、商品名称、商品数量、物流状态、物流电话、物流描述等物流信息,物流信息添加界面如下图5-21所示。
图5-21添加物流信息界面图
6系统测试
这部分内容主要是把前期编码完成的系统,当成是计算机系统的一部分,并结合一些数据,计算机硬件和支持的软件进行集成测试和确认测试。之所以要进行最后的测试步骤,原因在于检查制作的系统与需求说明书的比较中,存在的差异问题。进一步确认制作的系统在功能与性能上跟需求说明书当中的要求相符。
6.1 系统测试的类型
检测系统是否合格,需要用到很多的测试类型。接下来就对这部分内容进行描述。
功能测试:这是系统测试中,首先进行的测试内容,其属于黑盒测试。主要检验制作的系统与需求说明文档的相符程度,还有它们之间存在的差异问题。
性能测试:主要测试制作的系统,在同时面对很多的用户请求时,该系统的应对能力。同时也是检查制作的系统跟事先预定的系统性能存在的差距问题。这样的方法通常在实时系统中,或者是嵌入式系统中运用得比较多。
容量测试:这种方法针对数据。检查正常运行的系统对数据处理的容量值。
安全性测试:这种方法常用于检验系统中设置的安全保护机制对来自非法用户的攻击时是否有效。而检测系统中的信息保护机制就需要使用常见安全测试中的保护测试来验证。
健壮性测试:这种测试还有一个别称是容错测试,通常运用故障插入法来检测系统的容错能力,看系统是否可以忽略故障保持继续运行,或者是检测系统应对故障时的自动恢复能力。
兼容性测试:面对计算机的各种软硬件环境,检测本系统是否可以兼容。
易用性测试:这种方法主要是面向用户,检测用户是否很容易理解和使用系统。
6.2 功能测试
宠物商城在经历最后的测试环节,需要检验本系统的功能安全性,功能适用性等内容,最终得出测试结论。
表6.1 功能测试数据表
测试内容 | 测试结果 |
系统功能的适用性 | 符合要求 |
系统功能的依从性 | 符合要求 |
系统功能的安全性 | 符合要求 |
系统功能的准确性 | 符合要求 |
系统功能的可操作性 | 符合要求 |
6.3 可用性测试
通常来说,一个布局合理,显示的内容无错别字,并具备合理正常的操作逻辑的系统往往很受欢迎,而且可以提升访问者的使用时间以及访问率。
表6.2 可用性测试数据表
测试内容 | 测试结果 |
检查系统的操作逻辑合不合理 | 合理 |
检查系统的功能布局合不合理 | 合理 |
检查系统能否支持鼠标和键盘 | 能 |
检查系统反馈的提示有无错别字 | 无 |
检查系统功能有无友好性 | 有 |
检查系统页面能否正常关闭 | 能 |
检查系统各数据项有无错误 | 无 |
检查系统有无提供帮助信息 | 有 |
6.4 测试结果分析
宠物商城经过了编码阶段的单元测试,和最后的系统整体测试等测试后,对于用户要求的功能,本系统都进行了实现,各个模块都运行正常。在面对一些故障性问题时,本系统也有相应的应对办法,并且本系统可以保持24小时正常运转。因此,宠物商城可以交付用户使用。
结 论
宠物商城的开发设计并不是一件轻松事,因为毕设制作都是依照一定流程进行的。最开始是选择题目,然后通过各种方式查阅资料,以及对使用用户的需求进行调研,确定本系统的功能,为了降低系统编码的出错率,在设计阶段也需要下功夫,认真设计功能模块,使用大学所学的数据库知识,设计数据库。这样一来,对系统编码时,就会根据设计方案进行。编码完成,进行测试就能对合格的系统进行验收了。
借助身边同学还有导师提供的帮助,本人也顺利完成本系统的制作工作。对宠物商城的分析与总结,发现宠物商城具有如下特点:
(1)宠物商城有着详细的功能设计,所以编码时,基本依照设计的功能进行开发,因此具备较完善的功能;
(2)宠物商城在界面设计与布局时,参考了很多系统的界面设计风格,也从图书馆查阅了关于系统界面设计方面的资料,并把对本系统有用的知识做好笔记,有了这些知识积累,所以我在开发系统时,注重页面文字的排版,以及精确定位各页面元素,合理使用颜色搭配技巧,让本系统在不影响浏览效果的同时,让访问者产生一种简洁干净的视觉效果;
(3)宠物商城为了让用户易于使用,在能够直观表达系统内容的同时,也把页面的导航放在了页面中最关键的位置,这个位置也是充分考虑了用户的浏览习惯。所以用户操作系统,可以在短时间内找到需要的内容。
由于本人并不是专门从事开发工作的技术人员,目前在校学习的开发类知识处于初级阶段,只是对开发类技术有着简单了解和使用,加上日常完成的作业,也只是局限在某个系统的某个功能模块上,因此,完成一个功能完善的整个系统,对于我来说,还是有一定的压力。所以这也确定了我开发的系统具有缺陷。
(1)对于宠物商城的编码并没有完全依照编码规范,整个系统存在代码冗余的缺陷;
(2)宠物商城在数据输入上,对数据有效性检测还不够严格;
(3)对宠物商城的误操作提示,只是对部分功能进行了设计,还有很多功能都没有设计报错提示。
综上所述,本人仍需花费时间去学习编程知识,在后期,我将会学习代码模块化,将一些通用的函数,变量等进行单独设置,然后直接在需要的页面上进行调用,这样可以降低代码冗余率,同时也会多学习针对程序易出错地方的解决方案等知识。学习这些知识除了完善本系统之外,也是弥补自身编程能力不足的缺陷。
参考文献
[1]马庆. 计算机软件开发中JAVA编程语言的应用[J]. 山西电子技术, 2023, (06): 84-86+98.
[2]Zhang Xiao, Yu Ali, Wang Xin, Zhang Xue. 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.
[3]杨华, 徐扬. MySQL数据库对中文编码支持的探讨[J]. 网络安全和信息化, 2023, (10): 157-160.
[4]尹应荆. JAVA编程语言在计算机软件开发中的应用[J]. 石河子科技, 2023, (05): 45-47.
[5]袁琳琳. 浅析Java语言在计算机软件开发中的应用[J]. 信息记录材料, 2023, 24 (09): 81-83.
[6]闫立誉. 基于Java平台开发的软件保护技术探究[J]. 数字技术与应用, 2023, 41 (08): 199-201.
[7]田斌. 基于SSM框架的宠物医院系统设计[J]. 无线互联科技, 2023, 20 (14): 69-71.
[8]熊群毓. 大数据时代MySQL数据库的应用分析[J]. 信息与电脑(理论版), 2023, 35 (14): 209-212.
[9]张浩. SSM框架在Web应用开发中的设计与实现研究[J]. 电脑知识与技术, 2023, 19 (08): 52-54.
[10]Putri Intan Hapsari Surya, Buchori Imam, Handayani Wiwandari. Land use change and precipitation implication to hydro-meteorological disasters in Central Java: an overview[J]. International Journal of Disaster Resilience in the Built Environment, 2023, 14 (1): 100-114.
[11]López-Fogliani D.E., Muñoz C.. Right-handed neutrinos, domain walls and tadpoles in the superstring inspired μνSSM[J]. Nuclear Physics, Section B, 2023, 986
[12]Jamalnia Aboozar, Gong Yu, Govindan Kannan. Sub-supplier's sustainability management in multi-tier supply chains: A systematic literature review on the contingency variables, and a conceptual framework[J]. International Journal of Production Economics, 2023, 255
[13]金馨. 基于SSM的宠物店线上运营系统的设计与实现[D]. 首都经济贸易大学, 2021.
[14]严嘉维. “呦宠圈”宠物服务交易型平台的良性手机界面设计与应用[D]. 湖北工业大学, 2021.
[15]胡明生. 网上宠物销售商城系统. 河南省, 郑州师范学院, 2021-05-01.
[16]杨华. 基于SSM的宠物店信息系统的设计与实现[D]. 吉林大学, 2021.
[17]段尧. 宠物电商网站品牌传播研究[D]. 湖北工业大学, 2020.
[18]叶建林, 陈锐植, 吴秋坤, 方灿坤, 林均涛. 基于Android的宠物商城互动平台《Pap》的设计与应用[J]. 电脑知识与技术, 2020, 14 (13): 100-103.
[19]王璨. 电商是促进还是抑制了实体经济的发展[D]. 对外经济贸易大学, 2019.
[20]姜佳艺, 孙赵跃, 余思雨, 李明雪, 邹淇淇. 电子商务宠物养成计划的研究与实现[J]. 对外经贸, 2019, (07): 94-95.
致 谢
伴随着毕设项目的制作完成,也就意味着我们即将离开校园。回想几年的大学时光,不由得想起身边常伴的同学,授课的老师,还有毕设指导的老师们。
大学这几年,身边的同学为我提供了很多的帮助,不管是生活上,还是学习上,每次遇到问题,这些同学们都会耐心解答,有时为了避免我再次犯错,他们也会时不时提醒我。本次毕设制作期间,这些老同学也是互相分享开发经验,还有文档编写的技巧,从开题报告,还有任务书以及最后的论文等文档上,大家都是互相提出建议,互相参考一些编写经验和技巧。如此,我们才会进展得比较顺利。此刻,真心感谢这些老同学!
唯一不能忘记的是导师,平均每个导师都带了很多个毕业生,所以能够想象他们非常忙,因为一到毕业季,他们需要指导学生们毕业,还需要正常授课。作为本届毕业生,我也能够体会导师的辛苦和不容易。毕设制作的环节有很多,但是我的导师在进行的每个环节都严格要求我认真努力对待本项目,也对我编程技术上提出了很多至关重要的建议,还对一些比较细微但是也比较关键的部分向我进行了多次强调,让我少走弯路,可以如期实现本系统。此刻,真心感谢导师!
校园里的授课老师不仅有本专业的老师,也有其他专业的老师们,他们都教过我们课程,向我们传授知识,有了这些知识积累,我在本次毕设制作中,才知道有些问题该如何运用知识处理,此刻,感谢那些授课老师。
最后时刻,我要感谢校园,祝愿校园更加强大!
免费领取项目源码,请关注❥点赞收藏并私信博主,谢谢~