Java生鲜电商平台-商品无限极目录的设计与架构

说明:任何一个商品都应该是先属于某一个目录,然后在目录中添加商品,目录理论上最多支持三级,因为级别太多,不容易管理。但是设计中需要设计无限制的级别。

另外,最好用树形结构进行处理,这样非常容易观看与管理。

一般的功能类似以下:

 商品分类删除的原则是如下:

  1.目前Java开源生鲜电商有两级商品,如果要删除父级,则所有的子级别都是删除状态才可以。(千万不要说父级别删除了,子级别一起删除,这个是错误的)

2. 子级别下面挂有商品,如果子级别下面没有商品,则可以删除,如果有,则先删除商品,再删除子集。

3.  所有的删除都是打标删除,不允许物理删除.

一、产品目录定义

在电子商务系统中,产品目录是组织网店产品的一种分类方式。

产品目录一般为树形结构,结构上支持无限分级,但是最常见的是2~3级,很少4级或者以上的(B2B类网站除外)。

比如有类似京东、卓越一样的百货式商场,目录很丰富,图书/家电/手机数码等,每个一级目录下,还划分二级/三级

子目录等,也是三级就满足了业务需求。

而对于一些专业类的网站,如草莓派/麦包包等,两级就可以了,其它的细分通过扩展属性来满足。

产品目录是用户定位产品最为常见的方式,所以网站设置产品目录需要仔细斟酌,根据网站运营特点来做设置。一般而言,

笔者建议能够两层解决的不必用三层,实在需要三层的,可以将第三层隐含在搜索条件中,总之让顾客尽快的到达产品目录

对应的产品列表页面乃至找到对应的产品。

三、产品目录业务分析

1、主目录

一个产品会属于一个或者若干个目录。

但为了便于维护和统计,会指定其中的一个目录关联为该产品的主目录,并以此作为统计用。

为了满足某些销售策略,产品会在多个目录下出现。

2、 目录模板

对于产品目录至少会有两类模板:

1)一级目录首页

如果网站销售多种类型的产品(图书/家电/数码等),那么每一种类的产品差异很大,所以单靠一个网站首页是无法满足

各类营销手段和内容展示的。所以对于一级目录还需要设计特定首页,来对该目录下的商品进行各种推荐方式。

比如进入图书首页,那么就有最新图书(可以用tab形式分为科技类/军事类/人文。。。),热卖图书,相关促销等等。

2)目录的产品列表页面

当进入2级/3级或者更低的目录时,这时就直接显示该目录以及该目录子目录下的产品列表,提供按价格/各类属性选项/品牌等

方式收窄产品列表数据,直到找到合适产品。

3、SEO相关

对于上面的两个页面均需要特定的SEO相关数据,这样有利于搜索引擎搜索和辨识页面内容。

4、关联推荐

即在该目录对应的模板中进行的各种产品推荐。

比如最新/热卖/特色等等。

有些推荐方式有比较明显的规则,可以采用自动化的形式,有些则只能人工,有些则可以混合两种方式,方便运营设置。

1、产品和产品目录是多对多关系

其中一个关系的“是否主产品”为1(是)

2、 产品目录

包括基础数据、SEO相关、访问权限和其它若干数据等。

3、 产品和模板定制参数是一对多

如果支持多个模板,那么对于这些模板上某些信息是否显示/显示数量/排序等参数可以在这里设置。

4、 产品目录和产品目录统计是一对一

产品目录统计冗余若干统计数据,方便显示。

5、 产品目录和产品目录积分规则

系统会有预设的积分规则,这里可以指定该目录和该目录的子目录的特殊积分规则。

6、 产品目录和产品推荐产品

在该产品目录页面上推荐该目录下或者某个指定的子目录下的推荐产品。

7、 属性扩展

通过框架提供的属性扩展模块实现产品目录实体的自定义属性扩展。

8、 国际化信息

通过框架提供的国际化信息处理模块实现产品目录的数据国际化处理,比如名称/描述/图片等国际处理。

Java生鲜电商平台-商品无限极目录的设计与架构的更多相关文章

  1. Java开源生鲜电商平台-订单抽成模块的设计与架构(源码可下载)

    Java开源生鲜电商平台-订单抽成模块的设计与架构(源码可下载) 说明:订单抽成指的是向卖家收取相应的信息服务费.(目前市场上有两种抽成方式,一种是按照总额的抽成比率,另外一种是按照订单明细的抽成比率 ...

  2. Java生鲜电商平台-商品基础业务架构设计-商品设计

    Java生鲜电商平台-商品基础业务架构设计-商品设计 在生鲜电商的商品中心,在电子商务公司一般是后台管理商品的地方.在前端而言,是商家为了展示商品信息给用户的地方,它是承担了商品的数据,订单,营销活动 ...

  3. Java生鲜电商平台-商品的spu和sku数据结构设计与架构

    Java生鲜电商平台-商品的spu和sku数据结构设计与架构 1. 先说明几个概念. 电商网站采用在商品模块,常采用spu+sku的数据结构算法,这种算法可以将商品的属性和商品的基本信息分离,分开维护 ...

  4. Java生鲜电商平台-SpringCloud微服务开发中的数据架构设计实战精讲

    Java生鲜电商平台-SpringCloud微服务开发中的数据架构设计实战精讲 Java生鲜电商平台:   微服务是当前非常流行的技术框架,通过服务的小型化.原子化以及分布式架构的弹性伸缩和高可用性, ...

  5. Java生鲜电商平台-商家支付系统与对账系统架构实战

    Java生鲜电商平台-商家支付系统与对账系统架构实战 说明:关于生鲜电商平台,支付系统是连接消费者.商家(或平台)和金融机构的桥梁,管理支付数据,调用第三方支付平台接口,记录支付信息(对应订单号,支付 ...

  6. Java生鲜电商平台-微服务入门与服务的拆分架构实战

    Java生鲜电商平台-微服务入门与服务的拆分架构实战 刚开始进入软件行业时还是单体应用的时代,前后端分离的概念都还没普及,开发的时候需要花大量的时间在“强大”的JSP上面,那时候SOA已经算是新技术了 ...

  7. 点菜网---Java开源生鲜电商平台-商品基础业务架构设计-商品分类(源码可下载)

    点菜网---Java开源生鲜电商平台-商品基础业务架构设计-商品分类 (源码可下载) 说明:我们搞过电商的人都可以体会到,搞生鲜电商是最复杂的,为什么复杂呢?我总结了有以下几个业务特性决定的: 1. ...

  8. Java生鲜电商平台-系统异常状态的设计与架构(APP应用或者生鲜小程序)

    Java生鲜电商平台-系统异常状态的设计与架构 说明:在实际开发Java生鲜电商平台的时候,异常状态的设计关系着整体系统的性能问题,架构设计,以及稳定性方面,对此,我根据实际的业务场景,进行了系统设计 ...

  9. Java开源生鲜电商平台-商品表的设计(源码可下载)

    Java开源生鲜电商平台-商品表的设计(源码可下载) 任何一个电商,无论是B2C还是B2B的电商,商品表的设计关系到整个系统架构的核心. 1. 商品基本信息表:用单词:goods做为商品表 2. 商品 ...

随机推荐

  1. katalon studio升级到6.3.3版本后如何生成测试报告

    背景: katalon studio 6.3.0版本开始,默认不会生成测试报告,因此,原先自动化运行结果的邮件也就不会包含测试报告附件. 解决方法如下: 通过插件[basic reports]生成测试 ...

  2. CSS @规则

    最近在看极客时间winter大神的重学前端系列,遇到了许多不常用但是很重要的知识点.感觉视野得到了极大的开阔(打个广告,哈哈). 其中css @规则令人印象深刻.简单的做下笔记: @namespace ...

  3. kali linux查看局域网下所有IP,并对指定IP实施局域网内攻击(断网,随时查看对方密码,上网痕迹等)

    首先我们打开我们熟悉的kali linux操作系统,利用指令: ifconfig 来确认本机的ip地址 确认了本机的ip地址之后,利用一下的指令查看局域网下所有ip: fping -g 本机IP地址/ ...

  4. WC 个人项目 ( node.js 实现 )

    基于 node.js 的 wordCounter 个人项目 GitHub 项目地址:https://github.com/KofeChen/node.js-WordCounter 实现功能: 能够匹配 ...

  5. 测试文档(final)

    1 引言 1.1编写目的 编写本测试计划的目的是: (1)     为整个测试阶段的管理工作和技术工作提供指南同时确定测试的内容和范围,为评价系统提供依据: (2)     此外还帮助安排测试活动,说 ...

  6. 渗透测试学习 二十、 其他漏洞汇总之PHP相关漏洞

    大纲: PHP相关漏洞 JSP相关漏洞 其他漏洞汇总 PHP相关漏洞 文件包含漏洞 php://input等伪协议利用 代码执行漏洞 变量覆盖漏洞 文件包含漏洞 程序开发人员一般会把重复使用的函数写到 ...

  7. C++ 基础语法 快速复习笔记---面对对象编程(2)

    1.C++面对对象编程: a.定义: 类定义是以关键字 class 开头,后跟类的名称.类的主体是包含在一对花括号中.类定义后必须跟着一个分号或一个声明列表. 关键字 public 确定了类成员的访问 ...

  8. luoguP3531 [POI2012]LIT-Letters

    (https://www.luogu.org/problem/P3531) 注意编号 #include<cstdio> #include<algorithm> #include ...

  9. Feign的介绍与使用(五)

    一.Feign的介绍 Feign是一个声明式 WebService 客户端,使用Feign能够让编写Web Service 客户端更加简单,它的使用方法是定义一个接口,然后在上面添加注解,同时也支持J ...

  10. mysql里的insert

    insert不跟where 比如 insert into table (name) value('******')where id =1 肯定不行的 insert 语句 是插入语句,不跟条件的. 如果 ...