主要实体
原文标题:main entities

原文出处:http://www.broadleafcommerce.com/docs/core/current/broadleaf-concepts/data-and-service-models/main-entities

译者:IT十年

译文链接:http://www.ittenyear.com/170/broadleaf-main-entities/

本译文仅用于学习和交流目的,转载请保留原文链接和译文链接!



产品/商品Product
商品文件夹包括的就是这个实体。客户浏览和搜索的也是这个实体。

商品没有和不论什么价格信息直接关联。可是一个商品的价格信息能够通过与其一对一关联的一个Sku(他的默认Sku)得到。这个一对一关系是必需的,系统中不存在不和Sku关联的商品。


Sku
这个实体具有与其关联的价格信息,它能够出售,能够加入到购物车。能够把Sku看作是产品Product的一种特定的、详细的表现。

由于是详细的表现,Sku具有名称。描写叙述,大小等。每种产品都须要至少一种详细的表现,这就是为什么产品和他的默认Sku之间的关系是必需的。

一个产品也能够有多个详细的表现。

比方T恤的销售。你能够卖一个带图案的T恤,如果叫“狗衫”。当你最初设计“狗衫”时,你会给默认Sku设置名称。价格等等。

你也会提供各种颜色(比方蓝色,黄色。绿色)和各种尺码(比方小号,中号,大号)的“狗衫”。这须要另外的9个Sku表示:一种蓝色小号狗衫,一种黄色小号狗衫。一种绿色小号狗衫等等。每一个Sku会和ProductOptions、ProductOptionValues关联。在这个样例里,ProductOptions指的是颜色和尺码,而ProductOptionValues指的是蓝色、黄色、绿色。

一个产品Product将和10个Sku关联:1个Sku代表默认Sku(它是必需的),另外9个Sku代表ProductOptionValues的各种组合,而每种组合都能够有特定的价格(一件蓝色XL狗衫能够定价2美元)、库存。

ProductBundles是Product的子类,而Sku能够是很多ProductBundles中的一项(译者注:ProductBundles能够理解为打包销售的产品集合类,而Sku是当中的一种商品)。

这样的关系是通过SkuBundleItem间接实现的,在SkuBundleItem 中,你能够为Sku设置折扣价格,也能够设置一种Sku一次打包出售的数量。


订单Order(购物车cart)
非常明显,订单Order在电商系统中是至关重要的。而一个BLC订单代表已完毕的订单。它包括付款信息、发货信息、订单项,这些仅仅是订单所有功能的一部分。实际上,一个“进行中/未完毕”的订单是一个购物车。当中的订单项都能够被加入、更改、删除。

另外,“命名named”状态的订单相应一个意愿清单wishlist的概念。

电商系统Broadleaf文档翻译(六) - 主要实体main entities的更多相关文章

  1. 通过Dapr实现一个简单的基于.net的微服务电商系统(六)——一步一步教你如何撸Dapr之Actor服务

    我个人认为Actor应该是Dapr里比较重头的部分也是Dapr一直在讲的所谓"stateful applications"真正具体的一个实现(个人认为),上一章讲到有状态服务可能很 ...

  2. 通过Dapr实现一个简单的基于.net的微服务电商系统(十六)——dapr+sentinel中间件实现服务保护

    dapr目前更新到了1.2版本,在之前4月份的时候来自阿里的开发工程师发起了一个dapr集成Alibaba Sentinel的提案,很快被社区加入到了1.2的里程碑中并且在1.2 release 相关 ...

  3. 通过Dapr实现一个简单的基于.net的微服务电商系统

    本来想在Dpar 1.0GA时发布这篇文章,由于其他事情耽搁了放到现在.时下微服务和云原生技术如何如荼,微软也不甘示弱的和阿里一起适时推出了Dapr(https://dapr.io/),园子里关于da ...

  4. 电商系统架构总结1(EF)

    最近主导了一个电商系统的设计开发过程,包括前期分析设计,框架搭建,功能模块的具体开发(主要负责在线支付部分),成功上线后的部署维护,运维策略等等全过程. 虽然这个系统不是什么超大型的电商系统 数亿计的 ...

  5. 通过Dapr实现一个简单的基于.net的微服务电商系统(七)——一步一步教你如何撸Dapr之服务限流

    在一般的互联网应用中限流是一个比较常见的场景,也有很多常见的方式可以实现对应用的限流比如通过令牌桶通过滑动窗口等等方式都可以实现,也可以在整个请求流程中进行限流比如客户端限流就是在客户端通过随机数直接 ...

  6. 通过Dapr实现一个简单的基于.net的微服务电商系统(八)——一步一步教你如何撸Dapr之链路追踪

    Dapr提供了一些开箱即用的分布式链路追踪解决方案,今天我们来讲一讲如何通过dapr的configuration来实现非侵入式链路追踪的 目录:一.通过Dapr实现一个简单的基于.net的微服务电商系 ...

  7. 通过Dapr实现一个简单的基于.net的微服务电商系统(九)——一步一步教你如何撸Dapr之OAuth2授权

    Oauth2授权,熟悉微信开发的同学对这个东西应该不陌生吧.当我们的应用系统需要集成第三方授权时一般都会做oauth集成,今天就来看看在Dapr的语境下我们如何仅通过配置无需修改应用程序的方式让第三方 ...

  8. 通过Dapr实现一个简单的基于.net的微服务电商系统(十)——一步一步教你如何撸Dapr之绑定

    如果说Actor是dapr有状态服务的内部体现的话,那绑定应该是dapr对serverless这部分的体现了.我们可以通过绑定极大的扩展应用的能力,甚至未来会成为serverless的基础.最开始接触 ...

  9. 通过Dapr实现一个简单的基于.net的微服务电商系统(十一)——一步一步教你如何撸Dapr之自动扩/缩容

    上一篇我们讲到了dapr提供的bindings,通过绑定可以让我们的程序轻装上阵,在极端情况下几乎不需要集成任何sdk,仅需要通过httpclient+text.json即可完成对外部组件的调用,这样 ...

随机推荐

  1. celery 学习

    1. 列出计划的ETA任务(worker) celery -A proj inspect scheduled 参考文档:http://docs.celeryproject.org/en/latest/ ...

  2. 关于memset赋最值

    出处[辗转山河弋流歌 by 空灰冰魂] blog.csdn.net/vmurder/article/details/46537613 memset(a, 0x3f, sizeof(a)) //int, ...

  3. 二叉树、B树、B+树、B*树、LSM树

      HBase 对于数据产品,底层存储架构直接决定了数据库的特性和使用场景.RDBMS(关系型数据库)使用 B树 及 B+树 作为数据存储结构. HBase 使用 LSM树. .     二叉树    ...

  4. linux(debian/ubuntu)下连接安卓手机--小米4为例

    更改:如今小米连接Ubuntu等Linux系统,直接改动手机上的连接方式就可以. --------------------------------------------- 因为安卓手机底层就是lin ...

  5. 线程池系列一:线程池作用及Executors方法讲解

    线程池的作用: 线程池作用就是限制系统中执行线程的数量.     根据系统的环境情况,可以自动或手动设置线程数量,达到运行的最佳效果:少了浪费了系统资源,多了造成系统拥挤效率不高.用线程池控制线程数量 ...

  6. legend---二、如何降低编程复杂度

    legend---二.如何降低编程复杂度 一.总结 一句话总结:配置文件,数据库 个性的东西可以一起写入数据库,那么编程复杂度会大幅降低,页面灵活度也大幅降低(特有属性写进数据库) 比如不同难度的颜色 ...

  7. 异步Ajax

    Ajax异步刷新应用在Web开发中经常用到,在过去WebForm中通常是使用JQuery和一般处理程序或者aspx页面来实现: 在MVC中,虽然依然可以使用一般处理程序,但是一般还是通过在Contro ...

  8. POJ 3263 差分+set判重

    题意: 思路: 对于每一个区间 [a,b] [a+1,b-1]肯定是比a,b低至少1的 因为题目要求最大值 所以就直接差分一下 搞之 (复杂度 O(n)) Discuss里说有重复的数据 用set判一 ...

  9. JSP页面的静态包含和动态包含的区别与联系

    JSP中有两种包含: 静态包含:<%@include file="被包含页面"%> 动态包含:<jsp:include page="被包含页面" ...

  10. while my time-- , will the meaning++?

    // while my time--,will the meaning++? // However,what's the meaning of life ? while(tomorrow>0){ ...