热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

天猫整站(简易版)SSM(二)

目录一、需求分析-交互1.1商品排序1.2立即购买1.2.1未登录1.2.2登录1.3加入购物车1.3.1未登录1.3.2登录1.4调整订单项数量1.5删除订单

目录

一、需求分析-交互

1.1 商品排序

1.2 立即购买

1.2.1 未登录

1.2.2 登录

1.3 加入购物车

1.3.1 未登录

1.3.2 登录

1.4 调整订单项数量

1.5 删除订单项

1.6 生成订单

1.7 订单页功能

1.8 确认付款

1.9 确认收货

1.10 提交评价信息

1.11 登录

1.12 注册

1.13 退出

1.14 搜索

1.15 总结

二、需求分析-后台

2.1 分类管理(CRUD)

2.1.1 分页查询

2.1.2 新增

2.1.3修改

2.1.4 删除

2.2 属性管理(CRUD)

2.2.1 属性的概念

2.2.2 分页查询

 2.2.3 新增

2.2.4 修改

2.2.5 删除

2.3 产品管理(CRUD)

2.3.1 分页查询

2.3.2 新增产品

2.3.3 编辑修改

2.3.4 删除

2.4 产品图片管理

2.5 产品属性设置

2.6 用户管理

2.7 订单管理

2.7.1 订单分页查询

2.7.2 查看详情

2.7.3 发货

2.8 总结



一、需求分析-交互

1.1 商品排序

但是价格区间是在前端完成的,并没有后台交互。

1.2 立即购买


1.2.1 未登录

在产品页,未登录状态的时候,点击立即购买

1.2.2 登录

在产品页,如果已经登录,点击购买,会提交数据到服务端,生成订单项,并且跳转到结算页面。

1.3 加入购物车


1.3.1 未登录

在未登录状态,点击加入购物车,会弹出模态窗口

1.3.2 登录

在已登录状态,点击加入购物车,使用ajax异步提交数据到服务端,生成订单项,并且使当前 "加入购物车" 按钮变得不可点击

1.4 调整订单项数量

在购物车页面,调整订单项数量

1.5 删除订单项

在购物车页面,删除订单项,首先弹出模态窗口确认是否要删除,如果要删除,则通过Ajax异步发送请求到服务端,并且在当前页面删除该条订单项。

1.6 生成订单

在结算页面,提交订单时候,根据结算页面的收货人信息,订单项信息,生成订单数据

1.7 订单页功能

订单页面上有3个按钮,付款,确认收货和评价,这些按钮都没有提交数据到服务端,而是提交到下一个页面的二次操作,才提交数据到服务端的。

1.8 确认付款

点击确认支付,提交本信息到服务端,服务端修改订单中的支付日期

1.9 确认收货

确认收货页面,点击确认支付,提交数据到服务端,并且修改订单中的确认收货日期

1.10 提交评价信息

提交评价信息到后台

1.11 登录

输入正确账号密码,登录成功后跳转到首页,失败提示错误信息。

1.12 注册

1.13 退出

1.14 搜索

提交关键字到服务端,服务端查询数据库,并返回匹配的产品

1.15 总结

绿色表示展示的需求
红色表示与服务器有交互的需求

首页

  • 在横向导航栏上提供4个分类连接
  • 在纵向导航栏上提供全部17个分类连接
  • 当鼠标移动到某一个纵向分类连接的时候,显示这个分类下的推荐商品
  • 按照每种分类,显示5个商品的方式显示所有17种分类

产品页

  • 显示分辨率为950x100的当前商品对应的分类图片
  • 显示本商品的5个单独图片
  • 商品的基本信息,如标题,小标题,加个,销量,评价数量,库存等
  • 商品详情
  • 评价信息
  • 5张商品详细图片
  • 立即购买
  • 加入购物车

分类页

  • 显示分辨率为950x100的当前分类图片
  • 显示本分类下的所有产品
  • 分类页排序

搜索结果页

  • 显示满足查询条件的商品

购物车查看页

  • 在购物车中显示订单项
  • 调整订单项数量
  • 删除订单项

结算页

  • 在结算页面显示被选中的订单项
  • 生成订单

确认支付页

  • 确认支付页面显示本次订单的金额总数
  • 确认付款

支付成功页

  • 付款成功时,显示本次付款金额

我的订单页

  • 显示所有订单,以及对应的订单项

确认收货页

  • 显示订单项内容
  • 显示订单信息,收货人地址等
  • 确认收货

评价页

  • 显示要评价的商品信息,商品当前的总评价数
  • 评价成功后,显示当前商品所有的评价信息
  • 提交评价信息

页头信息展示

  • 未登录状态
  • 已登录状态
  • 登录
  • 注册
  • 退出

所有页面

  • 搜索


二、需求分析-后台

对支撑整站需要用到的数据,进行管理维护。 比如分类管理,分类属性管理, 产品管理,产品图片管理,用户管理,订单管理等等。

2.1 分类管理(CRUD)


2.1.1 分页查询

2.1.2 新增

2.1.3修改

2.1.4 删除

2.2 属性管理(CRUD)


2.2.1 属性的概念


这里的属性,指的是产品属性。 比如太阳镜这种产品,有镜片材质,适合脸型,眼镜配件类型等属性。而平板电视这种产品,有操作系统,能效等级,网络连接方式等属性。


不同的产品,有不同的属性,以及对应的属性值。按照传统的数据库的设计方式,就会在产品表里设置不同的字段,而天猫的产品五花八门,有成百上千种不同的属性,难道给一张产品表设置成百上千的字段吗? 这样做出来的系统,肯定是不具备维护性的。


为了解决这个问题,引入了产品属性这个概念,假定同一类产品,都有相同的属性。比如所有的女装,都有 材质成分,尺码,上市年份季节等等属性。 具体到某一件女装,其区别只是在于属性值不一样。这样在一个分类下,就可以维护一系列的产品属性,针对于不同的产品,再设置不同的值,即可达到保存和维护大量产品属性值的效果。


2.2.2 分页查询

 2.2.3 新增

2.2.4 修改

点击编辑按钮后跳转到修改页面 

2.2.5 删除

2.3 产品管理(CRUD)


2.3.1 分页查询

2.3.2 新增产品

2.3.3 编辑修改

点击编辑按钮,然后进行修改

2.3.4 删除

2.4 产品图片管理

一件产品,对应多条 单个图片,即缩略图
一件产品,对应多条 详情图片

所以这部分单独做一个页面进行管理

2.5 产品属性设置

根据前边的属性管理可知,一种产品所具备的属性,在其对应的分类中进行了维护。

那么,要修改产品的这些属性值,就在本页面进行。

这里采用异步提交方式,编辑即修改,修改成功用绿色边框表示

2.6 用户管理

用户管理就提供了一个分页查询,做的比较简约,几个原因:
1. 用户是不能删除的
2. 用户信息的修改,应该交由前端由客户自己修改,比如密码,基本信息等
3. 用户的增加,是前端注册导致的,后台不负责用户的增加
所以,增,删,改功能在后台就不提供了,仅仅提供一个分页查询

2.7 订单管理


2.7.1 订单分页查询

2.7.2 查看详情

2.7.3 发货

2.8 总结


  1. 分类管理
    • 分页查询
    • 新增分类
    • 编辑修改
    • 删除
  2. 属性管理
    • 属性概念
    • 分页查询
    • 新增属性
    • 编辑修改
    • 删除
  3. 产品管理
    • 分页查询
    • 新增产品
    • 编辑修改
    • 删除
  4. 产品图片管理
    • 产品图片概念
    • 产品图片管理
  5. 产品属性设置
    • 产品属性值设置
  6. 用户管理
    • 分页查询
  7. 订单管理
    • 订单分页查询
    • 查看详情
    • 发货


推荐阅读
  • 深入分析十大PHP开发框架
    随着PHP技术的发展,各类开发框架层出不穷,成为了开发者们热议的话题。本文将详细介绍并对比十款主流的PHP开发框架,旨在帮助开发者根据自身需求选择最合适的工具。 ... [详细]
  • 本文将详细介绍如何在ThinkPHP6框架中实现多数据库的部署,包括读写分离的策略,以及如何通过负载均衡和MySQL同步技术优化数据库性能。 ... [详细]
  • 本文将介绍如何利用Python爬虫技术抓取国内主流在线学习平台的数据,并以51CTO学院为例,进行详细的技术解析和实践操作。 ... [详细]
  • 1.执行sqlsever存储过程,消息:SQLServer阻止了对组件“AdHocDistributedQueries”的STATEMENT“OpenRowsetOpenDatas ... [详细]
  • 智能医疗,即通过先进的物联网技术和信息平台,实现患者、医护人员和医疗机构之间的高效互动。它不仅提升了医疗服务的便捷性和质量,还推动了整个医疗行业的现代化进程。 ... [详细]
  • PostgreSQL 最新动态 —— 2022年4月6日
    了解 PostgreSQL 社区的最新进展和技术分享 ... [详细]
  • 由二叉树到贪心算法
    二叉树很重要树是数据结构中的重中之重,尤其以各类二叉树为学习的难点。单就面试而言,在 ... [详细]
  • 优化Flask应用的并发处理:解决Mysql连接过多问题
    本文探讨了在Flask应用中通过优化后端架构来应对高并发请求,特别是针对Mysql 'too many connections' 错误的解决方案。我们将介绍如何利用Redis缓存、Gunicorn多进程和Celery异步任务队列来提升系统的性能和稳定性。 ... [详细]
  • 本文介绍了一个基于 Java SpringMVC 和 SSM 框架的综合系统,涵盖了操作日志记录、文件管理、头像编辑、权限控制、以及多种技术集成如 Shiro、Redis 等,旨在提供一个高效且功能丰富的开发平台。 ... [详细]
  • 深入剖析JVM垃圾回收机制
    本文详细探讨了Java虚拟机(JVM)中的垃圾回收机制,包括其意义、对象判定方法、引用类型、常见垃圾收集算法以及各种垃圾收集器的特点和工作原理。通过理解这些内容,开发人员可以更好地优化内存管理和程序性能。 ... [详细]
  • 理解文档对象模型(DOM)
    本文介绍了文档对象模型(DOM)的基本概念,包括其作为HTML文档的节点树结构,以及如何通过JavaScript操作DOM来实现网页的动态交互。 ... [详细]
  • 本文探讨了如何通过WebBrowser控件在用户点击输入框时自动显示图片验证码。该过程可能涉及JavaScript事件的触发与响应。 ... [详细]
  • 为了解决不同服务器间共享图片的需求,我们最初考虑建立一个FTP图片服务器。然而,考虑到项目是一个简单的CMS系统,为了简化流程,团队决定探索七牛云存储的解决方案。本文将详细介绍使用七牛云存储的过程和心得。 ... [详细]
  • 数据排序、无限滚动与分页加载及子查询的使用
    本文介绍了数据排序的基本方法,包括升序和降序排列。同时探讨了瀑布流布局(无限滚动)和传统分页技术在Web应用中的应用,并详细解释了子查询的概念及其替代方案。 ... [详细]
  • 本文深入探讨了JavaScript中实现继承的四种常见方法,包括原型链继承、构造函数继承、组合继承和寄生组合继承。对于正在学习或从事Web前端开发的技术人员来说,理解这些继承模式对于提高代码质量和维护性至关重要。 ... [详细]
author-avatar
PHP_sunshine
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有