对于订单来说,主要的表就是ORDER_HEADER和ORDER_ITEM。ORDER_HEADER就是所谓的订单头,一条记录代表一条订单。

ORDER_PAYMENT_PREFERENCE是订单的支付,它有三个主要外键,ORDER_ID代表是哪个订单,PAYMENT_METHOD_ID代表是哪种具体付款方法,PAYMENT_METHOD_TYPE_ID代表哪种付款类型。

订单ORDER" title="ofbiz数据库表结构设计(3)- 订单ORDER">

ORDER_HEADER中的字段:

ORDER_TYPE_ID是外键指向ORDER_TYPE表,用来表示该订单是个采购订单还是销售订单。

EXTERNAL_ID是代表了外部订单号,比如说拿ofbiz作为ERP来处理淘宝上的订单,那EXTERNAL_ID就可以用来存储淘宝上的订单号。

STATUS_ID是该订单的状态,是外键指向STATUS_ITEM  
表,STATUS_ITEM表中STATUS_TYPE_ID为"ORDER_STATUS"的数据是ORDER_HEADER中STATUS_ID字段的可选项。这里要注意,ofbiz中订单的状态和货运(SHIPMENT)状态以及支付(PAYMENT)状态是三个分开的对象的状态,象淘宝上“等待支付”以及“等待卖家发货”这种订单状态,在ofbiz中是PAYMENT对象以及SHIPMENT对象的状态。

PRODUCT_STORE_ID是用来表示该销售订单是在哪个店卖出去的

REMAINING_SUB_TOTAL可以看作是除了运费之外的所有费用总和(包括商品的费用,其它各种费用,还要减去各种促销费用)

GRAND_TOTAL可以看作是包括了运费之后的费用,也就是客户需要总共支付的费用

ORDER_ITEM中的字段:

ORDER_ID外键为对应的订单

ORDER_ITEM_SEQ_ID只是一个序列号,在一个订单中,总是以00001开始

PRODUCT_ID代表了这个订单项所对应的产品

QUANTITY是订单中这个商品的数量

CANCEL_QUANTITY是订单中这个商品取消的数量,如果QUANTITY是4,CANCEL_QUANTITY是4,则代表用户买了这个商品4件,但是又取消了4件,当然,最后结果就是1件也没买

UNIT_PRICE在这个订单中这个商品的单价

UNIT_LIST_PRICE这个商品的吊牌价

UNIT_AVERAGE_COST在这个订单中这个商品的平均成本,但是根据我们的检查,似乎ofbiz从来都没有用到这个字段,在系统中,这个字段的值永远是NULL。所以我们认为,开发者可以在自己开发的程序中,把这个值填充上去,为报表做准备.

原文地址:http://blog.sina.com.cn/s/blog_a2ca5d8c0101fbt6.html

ofbiz数据库表结构设计(3)- 订单ORDER的更多相关文章

  1. ofbiz数据库表结构设计(2)- CONTACT_MECH

    ofbiz中,party的电话.地址等联系方式设计得非常巧妙,让我们来仔细分析一下. 有一个叫做CONTACT_MECH的表,这张表我们把它称作联系方式表,一个电话号码.一个通讯地址.一个电子邮件,都 ...

  2. ofbiz数据库表结构设计(1)- PARTY

    ofbiz的精华就在于其数据结构(表结构)的设计.数据结构的通用性也决定了ofbiz几乎可以适用任何企业应用.我们首先来看看PARTY相关的表结构设计. 在ofbiz中,PARTY是个抽象概念,它可以 ...

  3. 【转】ofbiz数据库表结构设计

    真心不错的文章,可以加深对企业信息化的设计理解:) http://blog.sina.com.cn/s/blog_a2ca5d8c01017fa0.html http://blog.sina.com. ...

  4. MySQL基于左右值编码的树形数据库表结构设计

    MySQL基于左右值编码的树形数据库表结构设计   在关系型数据库中设计树形的数据结构一直是一个十分考验开发者能力的,最常用的方案有主从表方案和继承关系(parent_id)方案.主从表方案的最大缺点 ...

  5. 数据库表结构设计方法及原则(li)

    数据库设计的三大范式:为了建立冗余较小.结构合理的数据库,设计数据库时必须遵循一定的规则.在关系型数据库中这种规则就称为范式.范式是符合某一种设计要求的总结.要想设计一个结构合理的关系型数据库,必须满 ...

  6. Activiti5.13数据库表结构设计

    1.结构设计 1.1.    逻辑结构设计 Activiti使用到的表都是ACT_开头的. ACT_RE_*: ’RE’表示repository(存储),RepositoryService接口所操作的 ...

  7. 【VIP视频网站项目三】项目框架搭建、项目路由配置、数据库表结构设计

    一.项目路由的设计 目前项目代码已经全部开源:项目地址:https://github.com/xiugangzhang/vip.github.io 视频网站前台页面路由设计 路由 请求方法 模板 作用 ...

  8. Mysql数据库表结构设计准则

    一:动静分离 解释:最好做好静态表和动态表的分离.这里解释一下静态表和动态表的含义,静态表:存储着一些固定不变的资源,比如城市/地区名/国家(静态表一定要使用缓存).动态表:一些频繁修改的表 二:关于 ...

  9. 【Normal Form】数据库表结构设计所遵从的范式

    参考的优秀文章 数据库(第一范式,第二范式,第三范式) 数据库设计是件严肃.关键的事儿,一毕业,加入一个大型的行业项目,那儿的前辈资深工程师,就给我灌输数据库如何关键.神圣.深不可测的观念,所以,我一 ...

随机推荐

  1. MySql学习笔记05

    复习 GROUP BY 语句 HAVING 子句 -- 查询每个分类商品所对应的库存总量中,高于1000的总量 select category_id,sum(num) s from t_item gr ...

  2. Android_组件_Activity基础

    一.概述 Activity是应用组件,提供了用户交互的窗口.一个应用由多个彼此联系的Activity组成.它大多数情况是全屏窗口显示,也可以作为悬浮窗口 或者 多窗口模式. 二.生命周期 下图是来自A ...

  3. IDEA整合Mybatis+Struts2+Spring (二)--整合框架

    二.搭建目录结构 我这里列出的是搭建完了之后所有的目录和文件,诸位先把目录文件建起来,然后我在给出文件内容 这里的目录建好之后还需要设置一下,让idea识别目录作用,选择File-Project St ...

  4. kubernetes搭建dashboard报错

    warningconfigmaps is forbidden: User "system:serviceaccount:kube-system:kubernetes-dashboard&qu ...

  5. linux配置邮箱服务

    配置邮箱服务Linux常见的邮箱客户端是mail或mutt:服务端有sendmail服务(centos 5).postfix服务(centos 6).这里我们不使用本地的邮件服务,而是使用本地的邮件客 ...

  6. vue 判断是否登录,未登录跳转到登录页

    网页一进入判断是否登录,未登录跳转到登录页面 router.js export default new Router({ routes: [ { path: '/', name: 'HelloWorl ...

  7. phpstudy配置SSL证书的步骤(Apache环境)以及一些注意事项

    准备工具(我自己的): 腾讯云的域名和云主机,还有SSL证书,以及phpstudy 首先要下载自己的SSL证书,会得到一个压缩包,解压以后会得到四个文件夹和一个csr文件, Apache文件夹内三个文 ...

  8. Dungeon Master(逃脱大师)-BFS

    Dungeon Master Description You are trapped in a 3D dungeon and need to find the quickest way out! Th ...

  9. Uva:11401-Triangle Counting

    Triangle Counting Time limit1000 ms Description You are given n rods of length 1, 2-, n. You have to ...

  10. Tricky Sum

    In this problem you are to calculate the sum of all integers from 1 to n, but you should take all po ...