化妆品塑封开了怎么办,...上海如妍一站式化妆品obm-爱游戏平台

苗坤旺离型膜

简介

java基于ssm(可以转springboot项目哦)开发的美妆商城系统,主要是卖化妆品的系统,用户可以浏览商品,加入购物车,下单,在个人中心管理自己的订单。管理员可以管理自己的商品,发布商品,上下架商品,管理订单等。

可用eclipse或者idea打开,跟开发工具没关系,都可以运行。

演示视频 https://www.bilibili.com/video/bv1kq4y197xt/?share_source=copy_web&vd_source=ed0f04fbb713154db5cc611225d92156

代码讲解视频

https://www.bilibili.com/video/bv1kq4y197xt/?p=2&share_source=copy_web&vd_source=ed0f04fbb713154db5cc611225d92156

https://www.bilibili.com/video/bv1kq4y197xt/?p=3&share_source=copy_web&vd_source=ed0f04fbb713154db5cc611225d92156

技术

ssm(spring springmvc myibats) ajax bootscrap css jq js 图片剪裁和压缩 highcharts simditor图文编辑器

功能

爱游戏平台首页,搜索商品,详情页,可选择尺寸,衣服颜色,根据不同规格显示不同的商品价格,加入购物车,立即购买,评价列表展示,商品详情展示,商品评分,分类商品,标签查询,更多分类查询 ,特价商品查询,网站建议

用户: 登录(密码md5加密),注册,修改密码,收货地址管理,购物车,确认支付订单修改收货地址,添加备注,待支付订单,待发货订单,待收货订单,待评价低订单,已完成订单,申请退款订单,已退款订单,取消订单,删除订单,查看评价信息,我的购物车(可修改购买数量,可删除,可批量付款,也可单个付款)

管理员: 商品分类管理(排序),商品标签管理,商品管理(可灵活设置商品尺寸没规格参数和不同的价格,图文混合编辑),订单管理(未付款,待发货,待确认,待评价,已完成,待退款,已退款,查看评价。订单没有合并,是一个商品一个订单那哦),用户管理 ,商品月销售统计(拍下即减),统计图,导出月销量excel,轮播,网站建议回复

部分截图

java开发的美妆化妆品电商商城系统论文 目 录

绪论 1 1.1研究背景 1 1.2研究现状及发展趋势 1 1.2.1研究现状 1 1.2.2发展趋势 2 1.3研究内容 2 1.4研究意义 3相关技术介绍 4 2.1 jsp 4 2.2 java语言 4 2.3 mysql数据库 4 2.4 ssm框架 4 2.5本系统运行环境 5需求分析 6 3.1可行性分析 6 3.1.1技术可行性 6 3.1.2经济可行性 6 3.2系统功能分析 6 3.3功能结构图 7 3.4系统流程图 7 3.5技术流程图 9数据库设计 11 4.1数据库实体设计 11 4.2数据库表设计 14系统设计 19 5.1框架设计 19 5.2后台管理员模块 19 5.2.1登录模块 19 5.2.2广告轮播模块 19 5.2.3标签分类管理模块 19 5.2.4商品管理模块 19 5.2.5订单管理模块 19 5.2.6商品统计模块 20 5.2.7用户管理模块 20 5.2.8网站建议模块 20 5.3用户模块 20 5.3.1用户注册登录模块 20 5.3.2用户个人信息模块 20 5.3.3美妆产品浏览模块 20 5.3.4美妆产品购买模块 21 6.美妆网上销售系统的实现 22 6.1用户登录界面 22 6.2用户注册界面 23 6.3浏览美妆产品界面 24 6.4购物车管理界面 24 6.5订单记录界面 25 6.6管理员登录界面 26 6.7广告轮播界面 28 6.8商品管理界面 29 6.9订单管理界面 29 6.10分类管理界面 31 6.11商品统计界面 32 6.12网站建议界面 33 7.美妆网上销售系统的测试 35 7.1测试的意义 35 7.2测试的原则 35 7.3功能测试 35 结束语 38 参考文献 39 致谢 40

1.绪论 1.1研究背景 计算机网络技术以人们无法想象的速度在向人类靠近,在众多的网络服务中心中,网络购物已经普遍覆盖,更多的人选择网购的方式,特别是当代大学生,几乎每天都上网购物。网上购物有很多优点:方便、快捷,减少了很多销售环节。电子商务实现了网上商店或商品临时存储的销售模式,降低了商品成本,为企业提供了更大的利润空间。 美妆产品网上销售的模式减少了许多中间环节,通常情况下,产品直接来自制造商,质量有保障,价格优惠。与此同时,为了降低成本,网络销售无法与传统商店相比。网上销售的方式不需要线下的实体店面,这样既可以节省店铺租金,又可节省店面装修管理费,因此,更多的卖家用开网店来代替开实体店面。此外,不同之处在于,网上购物可以呆在家里,购物方式变得简单、免费、个性化,这成为了网上化妆品销售的一大优势。 用户可以在美妆销售平台上搜索自己心仪的商品,也可以对看中的商品进行下单操作等等。线上购物深受人们喜爱,更多的是因为现在大数据技术的迅速发展,网上美妆类产品种类齐全且库存数量丰富等优点。然而,虽然线下的美妆实体店有很多,但存在客流量多,难免会有让顾客等待或者商品库存不足的弊端。两者相比而言,线上销售可以解决实体店带来的问题,可以给用户节省大量的时间,还可以让用户买到喜欢的商品。现在,还有疫情的存在,更多的人响应国家的疫情号召,没必要不外出的原则,越来越多喜欢在手机上完成每一次的购物,这时候,对精致的爱美人士来说,在网上进行美妆购物就尤其方便。那么,开发美妆网上销售系统就显得非常有必要,可以在用户和商家之间形成一种共赢的状态。 1.2研究现状及发展趋势 1.2.1研究现状 信息技术日益贴近,电子商务伴随生活。网上购物成为人们生活中不可或缺的方式。美妆网上购物系统是通过买家和卖家之间的互动而产生的一种商业系统。企业利用计算机网络技术进行网上交易后,商品交易的本质核心是网上交易。线上交易的发展改变了原有的形式,从而使更多的客户更倾向通过互联网进行网上购物交易。这是以数字化为基础、互联网为重点的新经济革命。随着计算机硬件技术和网络交易法律法规的日益完善,网络购物营销已成为企业的主渠道。公司建立网站,在网络上展示他们的广告和服务。通过英特网可以使用户轻松方便地实现网上购物、商品购买、物流信息实时跟踪查询等功能。在改变原有线下实体经营模式的基础上,也为商家带来了更高的利润,如降低线下门店租金、日常水电费等成本。现在疫情反反复复,人们都不能外出,但每个女生对外在美又是十分在意的,从而女生对化妆品的市场需求是十分强大的,我认为美妆网上销售平台有着很大的发展前景。 1.2.2发展趋势 我在调研时查看了市场上已经存在的美妆线下实体店以及美妆类型的网站,发现了他们的漏洞。线下美妆商品结构不合理以及商品品种不齐全、各款仓库数量少,对顾客造成了一定的选择局限。当然还存在线下员工的漏洞,通常情况下,好的销售人员和一般的销售人员的所产生的销售额差距是成倍出现的,这个差距说明:卖的好的员工工作能力强,能把客户资源捞的多,而一般员工能力弱,把进店部分顾客资源漏掉了。还有些员工用顾客穿着来判断顾客是否有钱,是否自己真诚对待,从而错过美妆的销售额。实体店中还存在促销活动的漏洞,各个品牌的化妆活动促销,主要是会员双倍积分、商品买二送一等等,这种活动没有针对性,同时也没有差异性,很容易得到竞争对手的抄袭。在刚刚开始的时候,这种促销方式可能发挥了很大的作用,但是经过长时间当所有的店都采取这样的活动的时候,就不会起到让人满意的效果。而美妆店的人员已经默认了这样普遍又没有新意的做法,很多商店没有意识到这样已经失去了吸引力。我个人认为美妆网上销售平台的建设是十分有必要的,后续美妆平台上上传各种不同的美妆产品,从而进一步对平台进行发展和完善线上的美妆市场。 1.3研究内容 网络的普及,美妆博主的威慑力日增,越来越多的女生更加注重自己的外在形象。同时响应国家疫情期间没必要不外出的号召,精致的女生选择用网购的方式来代替实体购物。在大学生涯中,通过专业课理论的学习来设计一个美妆网上销售系统,这个系统能够为广大的爱美人士提供一个买化妆品的平台。用户们可以在美妆平台上搜索浏览自己心意的化妆品,收藏或者下单自己想买的产品。本系统准备设计了两类用户,管理员和普通购买用户。后台管理员的主要功能包括美妆产品信息的增删改查、统计月销售额等功能;普通用户可通过平台搜索自己心仪的化妆品,并对其进行下单等操作。 在实际性能方面,数据库结构做到设计合理,确保更好地存储整个平台数据;系统正常运行,平台界面友好设计,使整个平台看起来有一定的灵活性和可塑展性;系统安全性高,不同用户之间的操作权限合理分配;此外,数据处理的结果以直观清晰的图形界面显示给用户。 1.4研究意义 网络信息技术时代的来临,电子商务已变成销售经营的主要渠道。各个商家发现开网店已成为时代主流,便建立自己的专属网站,后将自家的店面宣传和产品服务展现于英特网中,从而可以借助网络实现用户上网选购、各种商品查询、订单跟踪等功能。在改变销售模式的同时,更为商家带来了宽厚的利益。建立一个属于自己的网站对商家来说是至关重要的。 美妆网上销售进行交易的大多数是爱美人士,他们搜索自己需要的化妆品,可查阅化妆品的信息详情,比如价格,毫升数、产地、适用肤质等等,用户可自行选择加入购物车后进行下单或者将产品进行收藏。而管理者通过自己的私密账号登入后台,可对所有商品进行删除或者添加新产品,对已经下单的订单进行发货等等功能。此美妆平台对用户有一定的方便性,对商家来说可以提高经济效益,如果出现售后问题,商家一切以用户利益为前提,对商品进行对应的售后操作。 作为美妆网上销售的系统设计者,我觉得这个系统能够使用户和管理者获得共赢,同时,我也能够将所学的理论知识应用起来去设计这样的系统。

2.相关技术介绍 2.1 jsp jsp是一种动态网页编程技术。与html技术不同,html是静态页面,即页面上的数据全都是静态的,但jsp是动态的,能够动态的从服务器中去获取数据库中的数据。如今更多的项目数据都不会写在页面上,因jsp技术应用广泛,此系统采用的正是动态获取的jsp技术。jsp技术可以在页面中嵌套java代码,为用户提供动态数据;jsp除了利用代码产生动态数据的同时,也很容易对数据进行排版。当我们第一次访问jsp的时候,jsp引擎都会将这个jsp翻译成一个servlet,把servlet作为web应用中的控制器组件来使用,而把jsp技术作为数据显示模板来使用。 被系统的前端页面均使用jsp实现,当用户在浏览器输入地址后即可访问该网站。比如前台用户注册页面、购买商品页面、商品浏览页面等;后台管理员添加商品页面,订单管理页面等。 2.2 java语言 java是一门面向对象的编程语言,最贴近人类的思维模式,能模拟现实世界,解决现实问题。它简单易学,安全可靠,并且基于java虚拟机以实现一次编译,可以在不同的平台上运行。java具有简单性,是自动内存管理机制,从而不易造成内存溢出;基于借鉴其他语言的特性,简化了流程的处理、简化了语义。java具有跨平台的特性,可以应用在不同的操作系统、服务器或者数据库中,从而达到java的目标:一次编写,多次运行。c 语言没有内置的多线程机制,因此必须要调用操作系统的多线程功能来进行多线程的程序设计,而java语言却停工了多线程的支持,所以java有支持多线程的特点。java语言的诞生本身就是为了简化网络编程而设计的,所以java语言不仅支持网络编程而且很方便。 本系统的数据处理是由java实现的,src以下均为java开发的业务逻辑代码,包含contrller、service、dao、model实体和untils工具类等,处理用户通过jsp页面发过的请求以及做出相对应的回应。比如:用户在登录的jsp页面输入账号和密码,java里的contrller就接收到了账号和密码,调用service,然后调用dao生成对应的sql语句查询mysql数据库,然后返回查询结果给前端,告诉用户是否登录成功。

2.3 mysql数据库 mysql是一个关系型的数据库,里面存储着不同类型的数据表,不具体指定其存储的方法,从而提高了数据检索的速度。mysql存在着许多的功能特点,比如:速度快、开源、成本廉价等等。在本系统中,美妆产品的详尽内容、用户、管理员的基本信息、购物车中的产品等等数据都离不开数据库,数据库是一个平台的重要环节。 本系统采用mysql8进行数据的存储,比如用户表、商品表、订单表、评论表等。 2.4 ssm框架 本课题的框架采用的是ssm框架。ssm框架是spring mvc spring mybatis框架的整合。首先,spring mvc框架是处理所有的http请求和响应的。其中,m是model(模型),封装了应用程序的数据;v是view(视图),负责呈现model的数据和一般它呈现的html的输出。c是controllor(控制器),负责用户处理的请求,并且为这些请求建立适当的模型,然后把模型数据返还给前端,也就是传给视图进行渲染。一般分为四层:dao层、service层、controller层和view层。 springboot就相当于一个管家对项目进行管理和配置,比如数据库连接池的配置、图片上传设置、资源映射等。myibats主要实现java代码与mysql的交互,实现数据持久化。 2.5 jquery插件 jquery是一个快速、简洁的javascript框架,设计的宗旨是写更少的代码,做更多的事情。它封装javascript常用的功能代码,提供一种简便的javascript设计模式,优化html文档操作、事件处理、动画设计和ajax交互。jquery的核心特性可以总结为:具有独特的链式语法和短小清晰的多功能接口;具有高效灵活的css选择器,并且可对css选择器进行扩展;拥有便捷的插件扩展机制和丰富的插件。 本系统前端页面的数据交互,比如商品详情页里的评论就是采用了ajax实现的数据交互,比如导航上二级菜单的展示与隐藏就是采用juqery的css方法和鼠标事件实现的。

2.6 bootatrap框架 为了前端页面的整洁美观,本系统使用了bootstrap的前端框架,快速搭建页面。bootstrap是基于html、css、javascript 开发的简洁、直观、强悍的前端开发框架,使得 web 开发更加快捷。bootstrap提供了优雅的html和css规范,它即是由动态css语言less写成。

2.7 jquery.photoclip.js图片剪裁插件 jqueryphotoclip是一款既支持移动设备触摸手势的图片裁剪jquery插件,同时也至此web端对图片进行旋转、放大、缩小等操作的剪裁。为了页面上的商品图片大小一致,展示的时候美观而不变形,本系统采用该插件,可对用户上传的头像进行剪裁和压缩,对轮播图进行一定比例的裁剪,包括管理员上传商品图片时也是用该插件进行了裁剪。 2.8 simditor.js富文本编辑器插件 simditor是一个基于浏览器的所见即所得的文本编辑器。 相比传统的编辑器它的特点是: 功能精简,加载快速输出格式化的标准 html 每一个功能都有非常优秀的使用体验。本系统中,管理员在发布商品的时候需要填写商品详情,由于商品详情内容多样,既有图片又有文字,所以采用富文本编辑器最合适,由于simditor使用简单,学习时间成本低,能快速掌握使用,所以本系统使用该插件实现了商品详情的图文混排。 2.9 pagehelper分页插件 pagehelper是国内非常优秀的一款开源的mybatis分页插件,它支持基本主流与常用的数据库,例如mysql、oracle、mariadb、db2、sqlite、hsqldb等。使用简单,学习成本低,最重要的是可以对各种复杂的sql进行分页和排序处理,其分页后的pageinfo对象,包含了分页的所有信息,比如是否有下一页和上一页、总条数、每页显示几条数据、当前第几页等,足够前端分页展示使用。可以帮助我在开发过程中省去大量而又复杂的分页代码,既轻松又省时的开发,大大提高了我的开发效率。本系统所有的分页均有该插件完成,比如爱游戏平台首页商品的分页展示、评论的分页加载、订单的分页等。 2.10 poi插件 poi提供api给java程序对microsoft office格式档案读和写的功能。本系统使用poi实现了商品销量的excel导出功能,方便管理员及时调整商品的进出货方向。 2.11 highcharts.js统计图表插件 highcharts是一款纯javascript编写的图表库,能够在web网站或web应用中添加交互性的图表。为了使管理员可以更直观的了解自己的商品销售以及营业额的情况,使用该插件实现了商品月销量统计折线图,商品年销量比例扇形图,商品营业额折线统计图等。使用简单,样式简洁美观,支持多维和单维展示,点击图表还可选择性的展示某些数据,看起来更直观,使用也方便。 2.10本系统运行环境 开发工具:eclipse 开发环境:jdk8,jre 数据库环境:mysql5.5以上 服务器:tomcat8.5 其他工具:navicat(mysql图形化工具),浏览器(谷歌、360、火狐等)

3.需求分析 3.1可行性分析 3.1.1技术可行性 运用软件工程的系统分析和设计思想对该系统的开发进行系统全面的策划,通过系统需求分析之后再对此美妆系统进行详细完整的数据库和前后端各个功能的设计,下一步就开始编码实现具体功能。最后,通过系统测试来测验此系统的正确性与可靠性。 3.1.2经济可行性 美妆网上销售系统和线下一些实体美妆店相比而言还是有一定的闪光点,比如减少房租费用以及运营这个线下店面产生的所有额外费用。而网上开店的主要支出只存在网站建设的一次性付费、聘请专门的网络技术人员、维护网站安全方面。从某种程度上说,线上销售的利润远远大于线下实体店的利润,但核心的效益是为用户节省了大量的购物时间;其用最低的投入来获得最高的效益。 3.2系统功能分析 为了便于平台管理和方便用户操作,在功能设计的时候需要考虑到基本功能的合理性,美妆网上销售系统分为普通用户角色和后台管理员角色。 普通用户: (1)用户管理功能:新用户可实现用户的注册,显示个人资料,修改个人信息等等。 (2)浏览搜索功能:帮助客户进行商品的检索,快速的找到其所想要的商品。用户可浏览页面查看商品详情,可加入购物车或者将商品进行收藏。 (3)订单查询功能:用户可以通过订单号在此处对所购商品的订单信息进行查询等等。 后台管理员: (1)用户数据管理:管理员可查看用户的信息,同样也包括对用户的增删改。 (2)商品数据管理:系统管理员对所有商品进行管理,主要是包括对商品的增删改查,同时也可以看到商品的库存数,以便及时进货,从而防止缺货等情况的发生。 (3)订单管理:包括对客户订单的处理以及对已经发货记录的查询,管理者可以在此查看客户所购买的商品订单。 (4)售后维护:管理员对客户留言进行查看,根据用户的需求进行一次完美的购物过程。 3.3功能结构图 通过对项目的需求分析以及对社会上人们的需求调查之后,将美妆网上销售系统分为用户模块和后台管理员模块。具体的功能如图1所示:

图1 功能结构图 3.4系统流程图 当用户进入用户界面的时候,如果用户没有账号的话则需要用户创建属于自己的账号;如果注册成功则可进入登录界面,当然,如果用户注册失败则需要重复进行刚刚的注册步骤再次进行用户注册。如用户已注册过即就可以直接选择用账号和密码进行登录。如登录错误会有错误提示,用户进行二次登录;反之用户进入个人信息和修改密码界面。具体的用户流程图如图2所示:

图2 用户注册登录流程图

当后台管理员进入美妆产品后台界面的时候,如果管理员没有账号的话则需要管理员进行创建属于自己的账号;如果注册成功则可进入后台管理功能,如果注册失败则需要再次进行注册。如果管理员注册过,就可选择用账号和密码进行登录。如登录时输入错误会有错误提醒,管理员可进行二次登录。具体的管理员流程图如图3所示:

图3 管理员注册登录流程图

美妆平台整体的流程图如图4所示:

图4 美妆平台整体流程图

3.5技术流程图 美妆网上销售平台的技术流程图如图5所示:

图5 技术流程图

4.数据库设计 4.1数据库实体设计 e-r图表示实体、属性和联系它们三者之间的关系,用来描述现实世界的概念模型。 用户实体,属性包括用户注册手机号、用户登录时密码、用户昵称、角色、创建时间等等,其e-r图如图6所示:

图6 用户实体e-r图 商品实体,属性包括商品名称、商品的销量及库存、在爱游戏平台首页显示的价格、商品上下架时间、商品图片等等,其e-r图如图7所示:

图7 商品实体e-r图 购物车实体,属性包括商品id、用户id、购买数量、创建时间、商品的单价及总价等等,其e-r图如图8所示:

图8 购物车实体e-r图 订单实体,属性包括订单号、商品id、用户id、收货地址、购买的数量、总价等等,其e-r图如图9所示:

图9 订单实体e-r图 收获地址实体,属性包括用户id、收货人姓名、创建时间、电话、地址和默认地址,其e-r图如图10所示:

图10 收货地址实体e-r图 评价实体,属性包括订单id、用户id、视频id、评分、评价内容和创建时间,其e-r图如图11所示:

图11 评价实体e-r图 月销量实体,属性包括商品id、月销量,月份、创建时间、月营业额;其e-r图如图12所示:

图12 月销量实体e-r图 系统的e-r图如图13所示:

图13 系统整体e-r图 4.2数据库表设计 根据此系统的e-r图,可分析出各个实体中属性之间的关系,则可设计出每个实体的数据库表。 用户表用来存放用户的基本信息,比如注册的手机号、登录密码或者用户性别其等等,如表1所示:

化妆品作为“颜值消费”,早已成为一部分人离不开的“刚性需求”,从变美、到保养、驻颜等这些诉求随着时间推移愈发严苛,而这背后,更少不了诸如如妍这样的化妆品代工企业把关。

点击添加图片描述(最多60个字)编辑

提到代加工企业,相信很多品牌并不陌生,因为在化妆品生产环节,大部分品牌的产品都采用委托生产(即代工)模式,而代工的主要形式无疑是oem和odm两种,前者只负责来料加工(品牌商提供配方、工艺技术、质量标准和品牌商标),后者则在品牌商的策划下完成配方研发、生产测试、包装贴牌等更完整的生产环节,再交由品牌商销售。

代加工行业的发展壮大离不开女性对于护肤的高要求

点击添加图片描述(最多60个字)编辑

“她经济”的崛起就是一个很好的例子,女性护肤从起初的“不粘腻”、“不假滑”、“清爽”、“不刺鼻”到追求体验友好、成分安全、强效保养等需求的不断升级,这让诸多护肤品牌不得不加速升级、革新。

同时,问题也就来了,对于品牌而言,库存压迫,会导致后期投入的管理和成本,这并不利于成长。而化妆品代工企业的出现,恰好在一定程度上,可以帮助品牌规模生产、降低成本,更好地满足市场要求,市面上很多知名的产品,或许都是出自同一家化妆品代加工企业。

点击添加图片描述(最多60个字)编辑

代加工行业的发展壮大,完全顺应了时下大热趋势,以如妍为例,多年来夯实研发和创新能力,提升技术壁垒,在质量管控上,化妆品代工企业以“苛刻”闻名,对成品的检验会涉及微生物、ph值、粘度、泡沫含量、比重、气密性等等十几个方面,同时不断优化质量管理流程,力求把好质量关、提升体验感。

总而言之,化妆品是一种特色鲜明的消费品类,与美丽相关联的消费属性使其天然产生了更加顽强的生命力和更加出色的爆发力;而在我国,长期来看,一轮化妆品消费周期正在拉开,不论从年轻化、跨性别、全渠道的人群效应还是从客单价的提升潜力,都印证化妆品市场具有景气向上的可能性,而代加工工厂只要坚守品质,也会迎来春天。

?php化妆品店会员管理系统

摘 要

在经济全球化的今天,建立以客户为中心的经营战略,可以加强企业和客户间的联系。对企业来讲,为客户提供一流的服务,是企业建立品牌、实现差别化服务、取得竞争的利器。一直以来人们使用传统人工的方式管理会员的基本档案,这种管理方式存在着许多缺点:效率低、保密性差,另外时间一长,将产生大量的文件和数据,对于查找、更新和维护都带来了不少的困难。而通过会员管理系统,企业就可以很轻松很方便的记录所有会员客户的资料,了解用户的兴趣爱好、消费特点、意向需求等;进而针对客户的需求,为其提供优质的个性化服务,还能为企业的产品开发、事业发展提供可靠的市场调研数据,是企业经营不可或缺的一个有利工具。

本文主要通过对化妆品店会员管理系统的前台和后台管理进行了功能性需求分析,对系统的安全性和可扩展性进行了非功能性需求分析。在详细的需求分析的基础上,根据系统的功能设计确定了数据库结构,实现完整的代码编写。化妆品店会员管理系统完成了主要模块的页面设计和功能实现。本文展示了爱游戏平台首页页面的实现效果图,并通过代码和页面介绍了用户注册功能、销售管理功能、会员管理、充值记录管理功能的实现过程。

关键词:会员管理;thinkphp框架;化妆品店

php cosmetics store member management systemabstract

in today's economic globalization, the establishment of a customer-centered business strategy can strengthen the relationship between enterprises and customers. for enterprises, providing first-class services to customers is a sharp weapon for enterprises to establish brands, realize differentiated services and obtain competition. for a long time, people use the traditional manual way to manage the basic files of members. this management method has many disadvantages: low efficiency and poor confidentiality. in addition, over a long time, it will produce a large number of documents and data, which has brought many difficulties to find, update and maintain. through the member management system, enterprises can easily and conveniently record the information of all member customers and understand users' interests, consumption characteristics, intention and demand, etc; furthermore, according to the needs of customers, providing them with high-quality personalized services can also provide reliable market research data for enterprise product development and career development. it is an indispensable and beneficial tool for enterprise management.

this paper mainly analyzes the functional requirements of the foreground and background management of the cosmetics store member management system, and analyzes the non functional requirements of the security and scalability of the system. based on the detailed demand analysis, the database structure is determined according to the functional design of the system to realize the complete coding. the cosmetics store member management system has completed the page design and function realization of the main modules. this paper shows the implementation effect diagram of the home page, and introduces the implementation process of user registration function, sales management function, member management and recharge record management function through code and page。

key words:?member management; thinkphp?framework; cosmetics shop

目 ?录

一、 绪论

(一) 研究背景与意义

(二) 研究内容

二、 开发工具及相关技术介绍

(一)?php开发语言

(二)?javascript脚本语言

(三)?mysql数据库

(四)?ajax技术

(五)?thinkphp框架介绍

(六)?b/s体系结构介绍

三、 系统分析

(一) 可行性分析

1.?经济可行性

2.?技术可行性

3.?操作可行性

(二) 功能性需求分析

(三) 非功能性需求分析

(四) 业务流程分析

四、 系统设计

(一) 功能模块设计

(二) 数据库设计

1.?概念模型设计

2.?数据库逻辑设计

3.?数据库表设计

五、 系统实现

(一) 用户登录的实现

(二) 系统前台主要功能实现

1.?爱游戏平台首页的实现

2.?用户注册的实现

3.?商品信息的实现

4.?销售管理的实现

5.?入库管理的实现

(三) 系统后台主要功能实现

1.?用户管理的实现

2.?充值记录管理的实现

3.?消费记录管理的实现

六、 系统测试

(一) 系统可靠性测试

(二) 系统功能性测试

(三) 系统合格性测试

(四) 测试结果

七、 总结与展望

参考文献

致谢

绪论

研究背景与意义

在计算机飞速发展的今天,将计算机这一高效的利器应用于会员管理已是势必所然,它可以带来意想不到的效果,尤其对于复杂的会员信息处理和大量的数据查询,计算机能够充分发挥它的优越性。在给广大用户带来方便的同时也会为的商业的发展提供无限潜力。

计算机已经成为我们学习和工作的得力助手,使用其管理会员有助于提高工作效率。今天,计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域。现在我国的中小商业机构中会员的管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多人力和物力,在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。

随着internet 的快速发展,会员管理己经成为所有web应用的基础。从电子政府、企业信息化、综合性网站、到垂直门户、数字图书馆乃至所有的电子商务,一定会涉及到内容的采集、创建、存储、管理、发布、检索和服务。会员管理在企业管理中有重要的地位和意义。开发会员管理信息系统是提高管理水平和管理效率的客观需要,结合会员管理信息系统的研究和开发工作,阐述了会员管理信息系统的特点、作用及有关其实现的若干关键性技术问题。

研究内容

化妆品店会员管理系统的开发及实现,所需要的工作内容:

(1)首先是确定选题,确定好所要做的系统,并对系统的背景及现在面临的一些问题等进行系统的初步确认。

(2)系统确认完成后,结合系统开发的需求进行确认系统开发所使用的技术,化妆品店会员管理系统的开发使用thinkphp框架,数据库进行系统的搭建开发,确认好使用的技术进行技术分析,所使用的技术是否可以完成系统的实现。

(3)确定好系统使用的技术,进行在线确认系统所划分的用户角色,并且根据用户角色划分确定所要设计的功能模块,对于化妆品店会员管理系统的设计主要划分别为管理员和用户角色,并所使用的功能模块也相应不同,但是系统的数据库实现的内容是交互的,用户可以随时根据自己的需求进行信息搜索,对于系统工作人员可以根据自己的分管内容进行在线信息的处理及操作,管理员获取到所有用户的详细数据信息,并根据需求进行第一时间处理解决。

(4)系统的功能模块确认完成后进行程序及界面的设计,设计完成后,并且通过测试来判断程序是否完善,对于系统测试,需要不同的用户进行不同的内容编辑及提交,及使用不同的测试方式找出程序中存在的漏洞,并对程序出现的漏洞问题进行在线解决处理,如果测试系统没有任何问题时,可以将系统上传进行正式操作使用。

开发工具及相关技术介绍

php开发语言

php是一种面向对象的程序设计语言,类是php程序的基本组成单元,类中又包含了属性和方法,在类中又可以创建无数个对象。类中包含的主要成员是字段和方法,字段是指一种数据变量,方法是指对字段进行操作的集合,包括给其他变量赋值、调用方法等。php代码都是编写在类体中,类体中的每个数据项都可以看作是一个对象,php不支持类的多重继承,但可以支持接口的多重继承,并且支持类和接口的实现。由于php通常在网络环境中使用,所以php提供了一个防止代码恶意攻击的安全机制,同时,php具有强类型机制、自动收集垃圾和异常处理等特性,这些都是php语言健壮性的重要保证。

1、php语言具有如下特点:

(1)php 结合 c、java、perl 以及自创的新语法形成了自己独特的语法。

(2)php可以更快速的执行动态网页,当然这只是相对于cgi或者perl来说,php可以在html文档中嵌入程序,而且去执行,另外php能够实现cgi的所有功能,因此说明php具有很强大的功能。

(3)大部分当下流行的数据库和操作系统php语言都能够支持。

(4)php语言的最重要特点就是可以让c、c 进行扩展

2、php语言具有如下优势:

(1)开放源代码:事实上php的所有源代码都可以得到。

(2)免费性:php是开源代码并且免费

(3)快捷性:php对于初学者来说,它不止编辑简单可以嵌入与html语言中,而且对于程序开发和运行也是非常快速的,并且非常容易掌握。

(4)跨平台性强:php是可以在服务器运行的脚本语言,所以在unix、android、mac os、windows等操作平台上都可以运行。

(5)效率高:php对系统资源的消耗相当少,所以它的效率高。

(6)图像处理:php不止是可以使用gd2对图像进行处理,而且他还可以完成对图像的创建。

(7)面向对象:php4、php5对于php在面向对象上,有了许多的改进,php语言开发大型商业程序也是可以胜任的。

javascript脚本语言

此作品中,其中包含了页面的搭建,以及前后台数据接口的连接等,而对于实现用户页面交互以及一些页面逻辑性判断等功能都是用javascript完成的[7],而javascript是已经被广泛用于web应用开发,是一种属于网络的脚本语言,常用来为网页添加各式各样的动态功能,为用户提供更流畅美观的浏览效果。通常javascript脚本是通过嵌入在html中来实现自身的功能。javascript作为一种描述语言,作用于web前端,它基于对象(object)和事件驱动(event driven)并且安全性也较好。它可以有效的在客户端运行并为服务器减轻负担。

1、javascript具有的特点:

(1)脚本语言。javascript是一种脚本语言并具有解释性,在程序运行过程中,它就可以进行解释。

(2)基于对象。javascript可以创建对象,而且还可以使用现在存在的对象,它是基于对象的脚本语言。

(3)简单。javascript不对使用的数据类型有着严格的要求,应用的是弱类型的变量类型,设计是十分紧凑简单。

(4)动态性。javascript是可以不经过web服务器对用户的操作做出相应,是可以采用事件驱动的脚本语言。

(5)跨平台性。javascript可以不依赖操作系统,但需要浏览器的支持。所以在编写javascript脚本后可以在任意机器上使用,但要注意的一点,使用的浏览器是支持javascript脚本语言,现在大多浏览器也支持javascript。

2、javascript的用途

javascript的用途是解决页面交互和数据交互,最终目的是丰富客户端效果以及数据的有效传递。

(1)实现页面交互,提升用户体验实现页面特效。即js操作html的dom节构或操作样式。

(2)客户端表单验证。当数据传送到服务端前,可以将用户填入并上交的信息快速有效的验证,进行了数据的交互,为服务器减轻了负担。

mysql数据库

mysql database,通常简称为mysql,是一款关系型数据库的管理系统。mysql数据库系统是目前最流行的关系型数据库管理系统之一,其系统具有良好的可移植性,功能强大且使用十分方便。mysql支持很多系统和硬件,包括hp-ux,linux,microsoftwindows,sunsolaris,applemac等。

mysql系统的特点:

(1)mysql的多线索服务器的体系结构使其只利用很少的资源就能够支持多用户的、大数据的高性能事务处理;

(2)mysql支持大量的多媒体数据,例如声音、动画、二进制图形和多维数据结构等;

(3)mysql提供了安全保密管理系统,具有良好的安全性、一致性和完整性;

(4)具有新的分布式数据库能力和分布处理的能力;

(5)提供了一些高级语言的接口软件,可以帮助快速开发基于客户端的应用程序,具有良好的移植性、可连结性和可兼容性。

mysql数据库逻辑结构包含表空间(tablespace)、段(segment)、范围(extend)、数据块(datablock)、和模式对象(schemaobject)?。每一个数据库都可以逻辑划分为一个或多个表空间,每一个表空间都是由一个或多个数据文件来组成。mysql数据库分为系统表空间和非系统表空间,每一个mysql数据库都包含一个称作system的系统表空间。

ajax技术

ajax是创建交互式网页的一种开发技术,利用ajax技术可以实现以无刷新网页的方式更新html元素中的内容。传统的网页如果要更新网页内容,必须重新加载整个页面,而ajax使用异步数据传输在网页和web服务器之前传递http请求,这样可以使网页只请求少量信息,而不用刷新整个页面。???????????

thinkphp框架介绍

thinkphp是为了简化企业级应用开发和敏捷web应用开发而诞生的。最早诞生于2006年初,2007年元旦正式更名为thinkphp,并且遵循apache2开源协议发布。thinkphp从诞生以来一直秉承简洁实用的设计原则,在保持出色的性能和至简的代码的同时,也注重易用性。并且拥有众多原创功能和特性,在社区团队的积极参与下,在易用性、扩展性和性能方面不断优化和改进。?

thinkphp是一个快速、兼容而且简单的轻量级国产php开发框架,诞生于2006年初,原名fcs,2007年元旦正式更名为thinkphp,遵循apache2开源协议发布,从struts结构移植过来并做了改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结构和mvc模式,融合了struts的思想和taglib(标签库)、ror的orm映射和activerecord模式。

thinkphp可以支持windows/unix/linux等服务器环境,正式版需要php5.0以上版本支持,支持mysql、pgsql、sqlite多种数据库以及pdo扩展,thinkphp框架本身没有什么特别模块要求,具体的应用系统运行环境要求视开发所涉及的模块。

作为一个整体开发爱游戏平台的解决方案,thinkphp能够解决应用开发中的大多数需要,因为其自身包含了底层架构、兼容处理、基类库、数据库访问层、模板引擎、缓存机制、插件机制、角色认证、表单处理等常用的组件,并且对于跨版本、跨平台和跨数据库移植都比较方便。并且每个组件都是精心设计和完善的,应用开发过程仅仅需要关注您的业务逻辑。

???(六)b/s体系结构介绍

b/s结构(browser/server,浏览器/服务器模式),是web兴起后的一种网络结构模式,web浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器,如chrome、safari、microsoft edge、netscape navigator或internet explorer,服务器安装sql server、oracle、mysql等数据库。浏览器通过web server同数据库进行数据交互。

系统分析

可行性分析

本系统将在经济、技术、操作这三个角度上进行可行性分析。

经济可行性

整个系统从设计到开发以及测试过程严谨步骤齐全,所有工作任务全部由本人完成,并未获取外部爱游戏官网登录入口的技术支持,节约了一切服务成本开销以及人工成本,在硬件方面,为节约成本使用一台二手移动工作站作为项目部署服务器以及数据库服务器,成本在一万元一下,真个网络部署也是由本人独立完成不涉及到其他人工费用,整个开发过程本着低成本,低消耗的原则。

技术可行性

技术可行性分析的目的是确认该系统能否利用现有技术实现,并评估开发效率和完成情况。技术的可行性是指在当前的技术条件下,计算机软件和硬件的开发是否能够满足发展的要求。因为该系统的开发基于php语言,所以开发该系统所需的软件和硬件条件可以在普通计算机上满足。因为它占用的内存相对较少,所以用mysql数据库开发和设计软件理论上没有问题,因为它占用的内存太少。上述技术可以有效地保证系统的成功和高效开发。

操作可行性

化妆品店会员管理系统的使用界面简单易于操作,采用常见的界面窗口来登录界面,通过电脑进行访问操作,用户只要平时使用过电脑都能进行访问操作。此系统的开发采用php技术开发,人性化和完善化是b/s结构开发比较显要的特点使得用户操作相比较其他更加简洁方便。易操作、易管理、交互性好在本系统操作上体现得淋漓尽致。

功能性需求分析

前台需求:

(1)用户模块:主要包括用户的注册和登陆、用户个人信息管理等功能。

(2)商品信息模块:主要存储包括商品编号、商品名称、商品类型、商品库存、商品价格等信息。

(3)销售管理模块:主要存储包括商品名称、商品类型、商品价格、销售数量、销售日期等信息。

(4)入库模块:主要存储包括商品编号、商品名称、商品类型、入库日期、如数数量等信息。

(5)充值记录:主要存储包括会员编号、会员姓名、会员性别、充值时间、充值金额等信息。

(6)消费记录:主要存储包括会员编号、消费金额、消费时间等信息

后台需求:

(1)用户管理:主要包括用户列表、用户等级管理等功能。

(2)商品管理:主要包括商品编号、商品名称、商品类型、商品价格、商品库存信息管理等功能。

(3)销售管理:主要包括订商品名称、销售数量、销售日期信息管理等功能。

(4)充值记录管理:主要对会员的充值记录进行维护管理。

(5)消费记录管理:主要对会员的消费记录信息进行维护管理。

(6)会员管理:主要对会员信息进行维护管理。

管理人员用例图如下所示。

图1 管理人员用例图

系统管理员用例图如下所示。

图2 系统管理员用例图

商品添加用例描述如下表所示。

表1商品添加用例描述

用例名称 添加新商品 参与者 管理员 用例概述 本用例用于管理员进行添加新商品操作 前置条件 管理员添加新商品前必须登录系统 后置条件 系统中添加一个新商品 基本事件流 参与者动作 系统响应

管理员在后台主界面选择“新商品”。4、管理员填写新商品信息,点击“添加”按钮。 2、系统打开添加新商品界面。 3、系统检查管理员输入的商品信息是正确有效的。 5、系统将商品添加到数据库中。 6、系统提示“操作成功”。 7、系统跳转到商品管理界面。 其他事件流 1、系统验证管理员输入的商品名为空,则提示“*请填写商品名称!”。 2、系统验证管理员输入的价格不是数字格式,则提示“*价格必须是数字格式!”

商品删除用例描述如下表所示。

表2商品删除用例描述

用例名称 删除商品 参与者 管理员 用例概述 本用例用于管理员进行删除商品操作 前置条件 管理员删除商品前必须登录系统 后置条件 系统中删除一个商品 基本事件流 参与者动作 系统响应 1、管理员在后台主界面选择“商品管理”。 4、管理员选择一个商品,点击“删除”按钮。 6、管理员点击“确定”按钮。 2、系统从数据库中获取商品信息列表 3、系统打开商品列表界面。 5、系统提示“你确定要删除吗?”。 7、系统将商品从数据库中删除。 8、系统提示“删除成功”。 9、系统跳转到商品管理界面。 其他事件流 无

用户编辑用例描述如下表所示。

表3用户编辑用例描述

用例名称 修改用户 参与者 管理员 用例概述 本用例用于管理员进行修改用户信息操作 前置条件 管理员已经登录系统 后置条件 系统中更新一条用户记录 基本事件流 参与者动作 系统响应 1、管理员在后台主界面选择“用户管理”。 4、管理员在用户列表中选择一个用户,点击“编辑”按钮。 6、管理员填写用户信息,点击“保存修改”按钮。 2、系统从数据库中获取用户信息。 3、系统打开用户列表界面。 5、系统打开修改用户信息界面。 7、系统将更改后的添加到数据库中。 8、系统提示“操作成功”。 9、系统跳转到用户管理界面。 其他事件流 无

商品销售用例描述如下表所示。

表4商品销售用例描述

用例名称 商品销售 参与者 用户 用例概述 本用例用于用户进行对商品销售操作 前置条件 用户已经登录系统 后置条件 系统中增加一条用户销售记录 基本事件流 参与者动作 系统响应 1、用户在前台爱游戏平台首页选择任意一个商品分类。 4、管理员在用户列表中选择一个商品。 7、用户填写销售订单,点击“销售”按钮。 2、系统从数据库中获取商品列表信息。 3、系统打开商品列表界面。 5、系统从数据库中获取商品信息。 6、系统打开商品信息及销售界面。 8、系统检查用户输入的信息是正确有效的。 9、系统将销售记录添加到数据库中。 其他事件流 1、系统验证用户输入的字段为空,则提示“*销售数量不能为空!”。

非功能性需求分析?

随着用户量的增加,系统可能会需要同时服务上千、上万个页面,服务器需要同时响应大量用户的操作,这就要求系统需要有良好的可扩展性,否则系统会出现延迟,卡顿甚至服务器崩溃的问题。高扩展性可以使软件保持旺盛的生命力,同时也能够使系统更好的适应用户增加、提高性能需求、增加应用功能等改变。

系统中保存了大量用户和管理员的个人信息,因此,保证系统服务器和数据安全是在开发过程中需要考虑的重要问题。安全性包括服务器安全、操作系统安全、数据库安全、程序代码安全以及用户个人信息和支付安全等,系统可以通过采用防火墙技术、加密技术、认证技术等来增强其安全性,只有一个健壮安全的系统才能具有长久的生命力。

业务流程分析

化妆品店会员管理系统的前台中,会员模块和充值模块进行数据交互,前台的功能主要包括用户模块、商品模块、会员充值模块和消费记录模块。

化妆品店会员管理系统的后台中,管理员对用户在前台提交申请产生的数据进行处理,以满足用户的需求。前台系统和后台系统有数据交互,整个系统各个部分相互独立又密不可分。后台的功能主要包括用户管理、商品信息管理、充值记录管理、消费记录管理。

系统设计

功能模块设计

通过软件的需求分析已经获得了系统的基本功能需求。根据各大功能模块的不同,将系统分为各种功能大块。系统功能结构如下图所示。

图4系统功能结构图

注册成功后,用户可以通过输入用户名来登录系统,输入密码后进行验证。登录成功后,进行商品入库、商品销售、会员充值记录管理等功能。

个人信息管理

用户登录系统后,在账户设置中,可以修改昵称、头像、登陆密码、收货地址等个人基本信息。

商品搜索

系统爱游戏平台首页展示了商品搜索输入框,用户在输入框内输入与商品类型相关的关键字,系统通过模糊查询搜索到用户需要的商品并展示。

商品信息

用户在浏览商品时,点击某一个商品,跳转到该商品的信息展示页。在商品信息页面展示了商品的详情信息,比如商品介绍,商品详情等,用户通过浏览信息了解商品的具体信息,最终决定是否购买。

数据库设计

概念模型设计

概念设计包括实体和联系两部分,如该系统中,用户是一个实体,其属性包括用户 id 标识、用户名、密码、电话、地址等属性。联系是指实体之间有意义的关联,包括一对一、一对多、多对多三种类型。

系统e-r图如下所示。

图5系统e-r图

在图中,用户购买菜品,关系为1:n,管理员管理菜品信息,关系为1:n,用户和订单的关系为1:n。

连接数据库的文件在resources?文件夹下的application.yml文件,代码如下:

server:

??port: 5000

??servlet:

????context-path: /api

spring:

??datasource:

????url: jdbc:mysql://127.0.0.1:3306/cs725260_20211101091736?servertimezone=gmt+8&usessl=false&characterencoding=utf-8

????username: root

????password: root

????driver-class-name: com.mysql.cj.jdbc.driver

??jackson:

????property-naming-strategy: camel_case_to_lower_case_with_underscores

????default-property-inclusion: always

????time-zone: gmt 8

????date-format: yyyy-mm-dd hh:mm:ss

??servlet:

????multipart:

??????max-file-size: 100mb

??????max-request-size: 100mb

数据库逻辑设计

针对系统的实体和属性,结合数据设计思想,对系统的逻辑设计的内容进行如下描述。

菜品(菜品编号、菜品名称、图片、价格、类目、介绍)。

订单(订单编号、菜品名称、价格、购买人、购买时间)。

订单(订单编号、用户名、订单内容、价格、是否支付)。

菜品信息(信息编号、标题、类别、内容、图片)。

美食资讯(美食资讯编号、标题、资讯内容、资讯列表)。

数据库表设计

数据库表是设计和实现系统的一个重要基础。以下列出了小郑米粉店几个重要的数据库表。

名称 类型 长度 不是null 主键 注释 controller_id int 11 是 是 管理者id number varchar 64 否 否 编号 full_name varchar 64 否 否 姓名 gender varchar 64 否 否 性别 post varchar 64 否 否 工作岗位 examine_state varchar 16 是 否 审核状态 recommend int 11 是 否 智能推荐 user_id int 11 是 否 用户id create_time datetime 0 是 否 创建时间 update_time timestamp 0 是 否 更新时间

名称 类型 长度 不是null 主键 注释 warehousing_management_id int 11 是 是 入库管理id commodity_number varchar 64 否 否 商品编号 trade_name varchar 64 否 否 商品名称 commodity_type varchar 64 否 否 商品类型 warehousing_date date 0 否 否 入库日期 receipt_quantity int 11 否 否 入库数量 recommend int 11 是 否 智能推荐 create_time datetime 0 是 否 创建时间 update_time timestamp 0 是 否 更新时间

名称 类型 长度 不是null 主键 注释 sales_management_id int 11 是 是 销售管理id commodity_number varchar 64 否 否 商品编号 trade_name varchar 64 否 否 商品名称 commodity_type varchar 64 否 否 商品类型 commodity_price varchar 64 否 否 商品价格 sales_volumes varchar 64 否 否 销售数量 date_of_sale date 0 否 否 销售日期 total varchar 64 否 否 总计 recommend int 11 是 否 智能推荐 create_time datetime 0 是 否 创建时间 update_time timestamp 0 是 否 更新时间

名称 类型 长度 不是null 主键 注释 records_of_consumption_id int 11 是 是 消费记录id member_number varchar 64 否 否 会员编号 member_name varchar 64 否 否 会员姓名 member_gender varchar 64 否 否 会员性别 dissipate datetime 0 否 否 消费时间 consumption_amount varchar 64 否 否 消费金额 recommend int 11 是 否 智能推荐 create_time datetime 0 是 否 创建时间 update_time timestamp 0 是 否 更新时间

名称 类型 长度 不是null 主键 注释 recharge_record_id int 11 是 是 充值记录id member_number varchar 64 否 否 会员编号 member_name varchar 64 否 否 会员姓名 member_gender varchar 64 否 否 会员性别 recharge_time datetime 0 否 否 充值时间 recharge_amount int 11 否 否 充值金额 recommend int 11 是 否 智能推荐 create_time datetime 0 是 否 创建时间 update_time timestamp 0 是 否 更新时间

名称 类型 长度 不是null 主键 注释 commodity_management_id int 11 是 是 商品管理id commodity_number varchar 64 是 否 商品编号 trade_name varchar 64 否 否 商品名称 commodity_type varchar 64 否 否 商品类型 commodity_price int 11 否 否 商品价格 merchandise_inventory int 11 否 否 商品库存 recommend int 11 是 否 智能推荐 create_time datetime 0 是 否 创建时间 update_time timestamp 0 是 否 更新时间

系统实现

用户登录的实现

用户注册完成后,点击“登陆”进入到登陆页面,输入用户名和密码,点击“登陆”按钮,对用户名和密码进行验证,根据传入的用户名和密码在数据库中是否能查询到一条用户信息,若不能返回用户信息则登陆失败,页面提示用户名或密码错误。

登陆拦截管理器,在config文件夹下的webappconfig.java文件,代码如下:

@configuration

@slf4j

public class webappconfig implements webmvcconfigurer {

????@override

????public void addinterceptors(interceptorregistry registry) {

????????//登录拦截的管理器

????????interceptorregistration registration = registry.addinterceptor(logininterceptor());

????????//拦截的地址

????????registration.addpathpatterns("/**");

????????//方行的地址

//registration.excludepathpatterns("/**");

????????//根据需要拦截,一般设置所有地址拦截,放行公共连接

????}

????@bean

????public logininterceptor logininterceptor(){

????????return new logininterceptor();

????}

}

登录界面如下图所示。

图5-1登录界面

用户登录的关键代码如下。

public function login()

????{

????????if (request::ispost()) {

????????????$request = request::param();

????????????$result = $this->validate($request, $this->validate);

????????????if (true !== $result) {

????????????????// 验证失败 输出错误信息

????????????????$data['error'] = 30000;

????????????????$data['message'] = $result;

????????????} else {

????????????????$request['password'] = md5($request['password']);

????????????????$result = $this->model->login($request, $this->table);

????????????????$data = $result;

????????????}

????????} else {

????????????$data['error'] = 30000;

????????????$data['message'] = "field的值不能为空!";

????????}

????????return json_encode($data);

????}

public function login($request=[],$table_name = ''){

????????$username = $request['username'];

????????$password = $request['password'];

????????$bol = $this->where(['username'=>$username])->find();

????????if ($bol){

????????????$password = md5($password);

????????????if ($request['password']==$bol['password']) {

????????????????//添加token信息

????????????????$access_token['create_time'] = date('y-m-d h:i:s');

????????????????$access_token['update_time'] = date('y-m-d h:i:s');

$access_token['info'] = json_encode($bol);

????????????????// $access_token['info'] = $bol;

????????????????$access_token['token'] = md5(date('y-m-d h:i:s'));

????????????????$bol_token = db::name('accesstoken')->insert($access_token);

????????????????if ($bol_token){

????????????????????$data['obj'] = $bol;

????????????????????$data['obj']['token'] = $access_token['token'];

????????????????????return ['result' => $data];

????????????????}else{

????????????????????return ['error' => ['code' => 5000, 'message' => '登录失败,token生成失败']];

????????????????}

????????????} else {

????????????????return ['error' => ['code' => 5000, 'message' => '登录失败,密码不正确']];

????????????}

????????}else{

????????????return ['error' => ['code' => 5000, 'message' => '登录失败,账号不存在']];

????????}

????}

系统前台主要功能实现?

1、用户注册的实现

用户进入系统爱游戏平台首页后,点击“注册”链接进入到注册页面,按照页面提示输入用户名密码和手机号,页面进行表单验证,验证输入的用户名和账号是否合法,表单验证通过后,点击“立即注册”按钮,利用 ajax 技术,对用户名和账号实现页面无刷新验证,检测数据库中是否已经存在该用户名,若数据库中不存在,则注册成功,注册成功后,自动跳转到登录页面。

用户注册界面如下所示。

????????????

图5-3用户注册界面

用户注册的关键代码如下。

public function register()

????{

????????if (request::ispost()) {

????????????$request = request::param();

????????????$request['create_time'] = isset($request['create_time']) ? $request['create_time'] : date('y-m-d h:i:s');

????????????$request['update_time'] = isset($request['update_time']) ? $request['update_time'] : date('y-m-d h:i:s');

????????????$result = $this->validate($request, $this->validate);

????????????if (true !== $result) {

????????????????// 验证失败 输出错误信息

????????????????$data['error'] = 30000;

????????????????$data['message'] = $result;

????????????} else {

????????????????$request['password'] = md5($request['password']);

????????????????$result = $this->model->register($request, $this->table);

????????????????$data = $result;

????????????}

????????} else {

????????????$data['error'] = 30000;

????????????$data['message'] = "field的值不能为空!";

????????}

????????return json_encode($data);

????}

public function register($request=[],$table_name = ''){

????????$username = $request['username'];

????????$bol = $this->where(['username'=>$username])->find();

????????if (!$bol){

????????????$result = self::allowfield(true)->save($request);

????????????if ($result) {

????????????????return ['result' => 1];

????????????} else {

????????????????return ['error' => ['code' => 3000, 'message' => '注册失败']];

????????????}

????????}else{

????????????return ['error' => ['code' => 3000, 'message' => '注册失败,账号已存在']];

????????}

????}

2、商品信息的实现

商品信息页面,如下图所示。

?

图5-4商品信息页面

商品信息的关键代码如下。

?@postmapping("/add")

????@transactional

????public map add(httpservletrequest request) throws ioexception {

????????service.insert(service.readbody(request.getreader()));

????????return success(1);

????}

????@transactional

????public map addmap(map map){

????????service.insert(map);

????????return success(1);

}

3销售管理的实现

系统爱游戏平台首页提供了销售管理的输入框,用户在输入框内输入商品销售信息关键字,点击提交按钮,系统将用户输入的关键字传递到后台。首先创建一个实体类 pagebean,该实体类的属性包括页码 pagecode、每页记录数 pagesize、总记录数 totalrecord 和一个 list 集合 beanlist,用循环将录入到的结果分页展示。

销售管理界面如下图所示。

图5-5销售管理界面

销售管理的关键代码如下。

?public function avg_group()

????{

????????$request = request::param();

????????if (isset($request['groupby']) && isset($request['field'])) {

????????????if (!empty($request['groupby']) && !empty($request['field'])) {

????????????????$result = $this->model->avg_group($request, $this->table, $this->table_id);

????????????????$data = $result;

????????????} else {

????????????????$data['error']['code'] = 30000;

????????????????$data['error']['message'] = "groupby或者field的值不能为空!";

????????????}

????????} else {

????????????$data['error']['code'] = 30000;

????????????$data['error']['message'] = "groupby或者field的值不能为空!";

????????}

????????return json_encode($data);

????}

入库管理的实现

点击“入库管理”按钮,页面将该商品入库的数据传递到后台,首先查询数据库入库表中是否已经存在该商品,若存在直接将商品数量加一,若不存在则创建一个新的入库对象,添加成功,数据库中的入库表单添加一条信息。

入库添加界面如下图所示。

图5-6入库添加界面

入库管理界面如下图所示。

图5-7入库管理界面

入库管理的关键代码:

public function avg()

????{

????????$request = request::param();

????????if (isset($request['field'])) {

????????????if (!empty($request['field'])) {

????????????????$result = $this->model->avg_field($request, $this->table, $this->table_id);

????????????????$data = $result;

????????????} else {

????????????????$data['error']['code'] = 30000;

????????????????$data['error']['message'] = "field的值不能为空!";

????????????}

????????} else {

????????????$data['error']['code'] = 30000;

????????????$data['error']['message'] = "field的值不能为空!";

????????}

????????return json_encode($data);

????}

系统后台主要功能实现?

用户管理的实现

管理员对系统用户的管理,在管理员管理实现管理员用户的管理,包括录入、删除、修改,修改密码通过session获取用户名,然后输入新密码,使用sql命令更新密码。

用户管理界面如下图所示。

图5-8用户管理界面

充值记录管理的实现

管理员可以获取系统中所有会员的充值记录,并对其进行编辑。管理员在添加会员充值记录信息时,需要输入充值基本信息,如会员编号、充值金额、充值时间等。添加充值信息完成,数据库中的充值记录表添加一条信息。

充值记录管理界面如下图所示。

图5-9充值记录管理界面

充值记录管理关键代码:

?public function add()

????{

????????if (request::ispost()) {

????????????$request = request::param();

????????????$request['create_time'] = isset($request['create_time']) ? $request['create_time'] : date('y-m-d h:i:s');

????????????$request['update_time'] = isset($request['update_time']) ? $request['update_time'] : date('y-m-d h:i:s');

????????????$result = $this->validate($request, $this->validate);

????????????if (true !== $result) {

????????????????// 验证失败 输出错误信息

????????????????$data['error'] = 30000;

????????????????$data['message'] = $result;

????????????} else {

if($this->table == 'user'){

$request['password'] = md5($request['password']);

}

$res = $this->add_before($request, $this->table, $this->table_id);

if($res['code'] == 200){

$result = $this->model->add($request, $this->table, $this->table_id);

$this->add_after($this->table);

$data = $result;

}else{

$data['error'] = $res;

}

????????????}

????????} else {

????????????$data['error']['code'] = 30000;

????????????$data['error']['message'] = "field的值不能为空!";

????????}

????????return json_encode($data);

消费记录管理的实现

管理员在后台管理界面点击到所有消费记录界面列表,可以搜索当前所有消费记录信息,调用搜索全部消费记录的请求,向数据库的消费记录表搜索当前所有消费记录并将消费记录信息以对象的形式层层返回到消费记录列表界面,显示出当前所有消费记录信息。同时可以删除过期消费记录,确认已有消费记录。

消费记录管理界面如下图所示。

图5-10消费记录管理界面

会员管理界面如下图所示。

图5-11会员管理界面

消费记录管理的关键代码如下。

public function sum()

????{

????????$request = request::param();

????????if (isset($request['field'])) {

????????????if (!empty($request['field'])) {

????????????????$result = $this->model->sum_field($request, $this->table, $this->table_id);

????????????????$data = $result;

????????????} else {

????????????????$data['error']['code'] = 30000;

????????????????$data['error']['message'] = "field的值不能为空!";

????????????}

????????} else {

????????????$data['error']['code'] = 30000;

????????????$data['error']['message'] = "field的值不能为空!";

????????}

????????return json_encode($data);

????}

系统测试

系统可靠性测试

以进入系统爱游戏平台首页的访问速度为例展示系统的性能测试;系统要在3秒钟内响应;需要完成页面的菜单栏、爱游戏平台首页轮播图片、商品管理及销售管理、会员充值记录以及各功能模块入口等元素的显示。

系统功能性测试

功能性测试是指执行指定的工作流程,通过对一个系统的所有特性和功能都进行测试确保符合需求和规范。

系统功能性测试表如下表所示。

表11系统功能性测试表

编号 测试功能 测试内容 测试结果 1 用户登录 1.验证用户名与密码的正确性。 2.验证密码是否可见。 通过 2 爱游戏平台首页展示 1.爱游戏平台首页数据是否成功加载。 2.验证搜索功能的准确性。 3.验证是否可以异步加载。 4.验证导航栏按钮。 通过 3 个人信息修改 1.验证登录名是否可以正常更改。 2.验证爱游戏平台的联系方式是否可以更改。 3.验证收货地址可以正常修改。 4.验证密码是否可以修改。 通过 4 商品管理 1.购买商品清单是否可以生成。 2.验证消费信息是否准确。 通过 7 入库管理 1.验证商品入库新增是否可以成功。 2.验证商品入库删除是否可以成功。 通过 8 充值记录管理 1.充值记录是否与上传一致。 2.是否能完成信息修改。 3.验证信息修改。 通过 9 消费记录管理 1.能否正常上传消费记录信息。 2.验证数据准确性。 通过 10 会员管理 1.验证会员录入功能。 2.验证会员违规清理功能。 通过

系统合格性测试

集成测试后,所有的模块已经全部连接完毕,形成了一个完整的系统。合格性测试是在集成测试完毕后,进一步对系统进行综合性的检测。经过合格性测试,可以检查出系统是否符合系统的设计,能够完成需求的所有功能。本系统经过最后的测试,所有模块功能都能按预定要求工作。

测试结果

在实际测试中,经过一系列系统性的测试,使我们能够及时发现一些系统在设计中出现的疏忽和漏洞。经过严密的测试,不仅发现了模块内部的错误,也查找到模块连接后产生的错误。经过测试,对系统产生错误的地方进行优化、修改和完善,使得系统能够实现最初设计的基本功能。

总结与展望

本文针对化妆品店会员管理系统的特点和用户需求,利用 php相关技术、thinkphp框架等技术,通过详细的需求分析、页面设计和功能设计,系统利用jquery 技术和 css 技术进行了页面设计,实现了包括用户模块、商品模块、销售模块。充值记录模块和消费记录模块的前台系统以及包括用户管理模块、入库管理模块、会员管理模块的后台系统。另外,系统还进行了数据安全设计,并添加了用户的访问控制,建立了一个完整、健壮、安全稳定的化妆品店会员管理系统。

由于时间限制和本人能力条件有限,还存在一些不足,今后也会出现许多新的开发技术,未来还可以对程序做出如下改进:

(1)优化程序页面,使页面更加美观且方便操作;

(2)优化信息搜索功能,提供多条件选择查询搜索;

(3)进一步提高使用程序的安全性,使其更加健壮;

(4)优化数据和代码,提升软件效率,方便维护和扩展。

参考文献

[1]张蒙蒙,曹成茂.基于mvc框架的会员管理系统的设计与实现[j].滁州学院学报,2021,23(05):27-32.

[2]黄志超,雷学峰.会员管理与备份系统的设计与实现[j].信息与电脑(理论版),2021,33(15):137-140.

[3]姜志敏,杨欢欢.在线化生存下的会员管理[j].中国药店,2021(05):74-77.

[4]梁增华,张书锋,尤澜涛.商业零售会员管理系统的设计与实现[j].电脑知识与技术,2021,17(05):67-70.

[5]徐驰. 基于分布式的会员管理系统的设计与实现[d].西安电子科技大学,2020.

[6]王娟,马薇.基于.net的协会会员管理系统的设计与实现[j].电子技术与软件工程,2020(05):169-170.

[7]李坤. 大连宜家会员关系管理优化策略研究[d].大连理工大学,2019.

[8]段清阳. 基于会员分类的会员关系管理应用研究[d].长安大学,2019.

[9]罗苑瑜.pdca循环法在会员管理制度的运用[j].管理观察,2019(05):88-89.

[10]顾宏. 高尔夫会员信息管理系统的设计与开发[d].湖北工业大学,2018.

[11]孙文宇. 电视台全媒体客户资源信息管理系统的设计与实现[d].山东大学,2018.

[12]周超. 会员管理系统运营支撑子系统的研究与实现[d].北京邮电大学,2018.

[13]泛舟.会员数据的“价值”[j].中国药店,2018(01):28.

[14]张朦博轩. 基于微信公众平台的电子会员信息管理系统研发[d].北京工业大学,2018.

致谢

时光飞逝,转眼间我在学校的这些年生活即将结束,回顾这几年的学习生活,收获良多,既有幸福也有难过,学校生活的结束对于我来说也是一个新的开始。论文即将完成,在此,我心中有许多想要感谢的人。首先感谢我的导师,不仅在学习研究方面加以指导,也在生活和为人处世上给予帮助。还要感谢授课老师,你们严谨的学术精神和积极向上的工作态度都在激励我的成长和进步。感谢多年来一直生活在一起的室友,谢谢你们多年来的陪伴和照顾。最后,要感谢各位论文评审老师,感谢您们在百忙之中抽空评阅本论文并给出宝贵的意见和建议。

免费领取本源代码、数据库,请私信

文章爱游戏平台的版权声明:除非注明,否则均为苗坤旺离型膜原创文章,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复: 表情:
applausebadlaughcoffeefabulousfacepalmfecesfrownheyhainsidiouskeepfightingnoprobpigheadshockedslapsocialsweattolaughwatermelonwittywowyeahyellowdog
评论列表 (暂无评论,16人围观)

还没有评论,来说两句吧...

微信二维码
微信二维码
支付宝二维码
网站地图