选中购物车中的某些商品,进行下单,订单表也就应运而生
订单表(order_info)----订单编号(如果对编号格式没什么要求,可使用雪花算法https://blog.csdn.net/u011499747/article/details/78254990来生成)itemCount (商品项数量,不是商品个数,比如手机*2,鼠标*1,这里应该是2)用户id店铺id下单时间支付方式(可用数字表示,如1:支付宝,2:微信,3:银行卡...)支付时间outTradeNo 支付宝订单号配送方式期望配送日期商品总额运费实际付款订单状态(这里的状态可根据实际项目来定,可以定10,20,30..这样如果中间缺少一个状态可以添加进去)
如果购物车里面有多个店铺的商品,那么应该分别为这些店铺生成对应的订单。平台可以进行合并支付,但是订单还是要归店铺的。
上面是订单的基本信息,接下来是订单商品相关。
订单商品表(order_product)---订单编号spuIdskuId店铺id商品名称商品数量商品价格
这里order_info与order_product是1对多的关系,一个订单可能有多个商品。
下单完成,等着发货,物流信息不能少,加下来是物流表
物流表(order_logistics)---订单标号物流公司id物流公司编号快递单号发货时间收货时间物流跟踪表(order_logistics_flow)---订单标号物流公司标号快递单号remark(根据第三方接口返回来的结果信息)
加下来设计一下发票表
订单发票(order_invoice)---发票类型发票抬头发票内容发票代码发票号码开票日期校验码密码区服务名称规格型号数量单价金额合计税率税额销售方名称销售方纳税人识别号销售方地址电话销售方开户行及账号备注收入款人开票人
下单完成后进行支付,这里会有支付记录表,方便以后对账
支付记录表(order_pay_history)---订单编号支付方式订单总额支付金额pay_json(第三方支付平台参数信息,可使用json方式保存)remark (备注)
用户收到货后,可以进行评论,下面是评论表
订单评论(order_product_comment)---spuIdskuId评论用户id用户昵称点赞数comment(评论内容)评论分数(1~5分)评论时间product_info_json(评论的商品信息,如规格型号之类的)image_json(评论图片)
好了,订单系统设计到此为了,当然围绕订单系统还有更多的业务可以开展,这里只做了一些基本的结构设计。
顺便说一句,如果一开始就想做分布式系统,建议把商品相关的表和订单表放在同一个数据库中,一则是因为订单业务需要查询商品相关的数据,二则是因为放在一起做事务比较容易,不然需要做分布式事务,加大了开发成本。前期项目规划的时候这点需要考虑到。
购物商城数据库设计-订单系统设计
标签:支付 方便 建议 car 校验码 一个数据库 手机 结构 http
小编还为您整理了以下内容,可能对您也有帮助:
订单管理系统详细设计
订单管理系统是指通过计算机技术对订单信息进行自动化管理和处理的系统。本文将详细介绍订单管理系统的设计。
1.总体结构设计
订单管理系统的总体结构包括前端、后台和数据库三个部分。前端负责与用户进行交互、收集用户提交的订单信息;后台进行订单的处理和管理;数据库负责存储订单信息。
2.前端设计
前端主要包括订单录入、订单查询、个人中心等模块,采用Web前端页面实现。前端页面应该友好、简洁、易用,便于用户理解和操作。同时,前端还应该具备验证输入信息的功能,确保订单信息的有效性和合法性。
3.后台设计
后台主要负责订单的处理和管理,包括订单审核、订单分派、订单处理、订单结算等流程。后台应该配备完善的权限管理系统,确保各个角色拥有的权限都能够被合理地控制。
4.数据库设计
数据库应该包括订单信息、用户信息、商品信息等数据表,以及订单状态、支付方式、配送方式等常量表。订单信息表应该包括订单号、商品信息、订单状态、支付方式、配送方式等字段,用户信息表应该包括用户编号、用户名、联系方式、地址等字段,商品信息表应该包括商品编号、商品名称、商品价格等字段。
5.数据交互设计
前端页面和后台系统之间的数据交互应该使用AJAX技术,可以实现数据的异步更新和即时响应。同时,应该使用HTTPS协议对数据进行加密传输,保证数据的安全性。
6.系统稳定性设计
在设计订单管理系统时,应该考虑系统的稳定性,采用集群部署方案,同时配备负载均衡、数据备份和恢复等措施,确保系统具备高可用性和可靠性。
7.安全性设计
在订单管理系统设计中,应该重视数据安全,采用严格的权限控制和身份认证,以确保系统的安全性。同时,在数据交互过程中采用HTTPS加密传输技术,防止数据被劫持和窃取。
8.性能设计
订单管理系统应该具备高性能,能够支持大量的并发访问和数据处理。在设计时,应该合理设置系统参数、优化数据库查询语句等,提高系统的性能和效率。同时,应该借助性能测试工具对系统进行测试和优化,确保系统具备高性能和稳定性。
订单管理系统详细设计
订单管理系统是指通过计算机技术对订单信息进行自动化管理和处理的系统。本文将详细介绍订单管理系统的设计。
1.总体结构设计
订单管理系统的总体结构包括前端、后台和数据库三个部分。前端负责与用户进行交互、收集用户提交的订单信息;后台进行订单的处理和管理;数据库负责存储订单信息。
2.前端设计
前端主要包括订单录入、订单查询、个人中心等模块,采用Web前端页面实现。前端页面应该友好、简洁、易用,便于用户理解和操作。同时,前端还应该具备验证输入信息的功能,确保订单信息的有效性和合法性。
3.后台设计
后台主要负责订单的处理和管理,包括订单审核、订单分派、订单处理、订单结算等流程。后台应该配备完善的权限管理系统,确保各个角色拥有的权限都能够被合理地控制。
4.数据库设计
数据库应该包括订单信息、用户信息、商品信息等数据表,以及订单状态、支付方式、配送方式等常量表。订单信息表应该包括订单号、商品信息、订单状态、支付方式、配送方式等字段,用户信息表应该包括用户编号、用户名、联系方式、地址等字段,商品信息表应该包括商品编号、商品名称、商品价格等字段。
5.数据交互设计
前端页面和后台系统之间的数据交互应该使用AJAX技术,可以实现数据的异步更新和即时响应。同时,应该使用HTTPS协议对数据进行加密传输,保证数据的安全性。
6.系统稳定性设计
在设计订单管理系统时,应该考虑系统的稳定性,采用集群部署方案,同时配备负载均衡、数据备份和恢复等措施,确保系统具备高可用性和可靠性。
7.安全性设计
在订单管理系统设计中,应该重视数据安全,采用严格的权限控制和身份认证,以确保系统的安全性。同时,在数据交互过程中采用HTTPS加密传输技术,防止数据被劫持和窃取。
8.性能设计
订单管理系统应该具备高性能,能够支持大量的并发访问和数据处理。在设计时,应该合理设置系统参数、优化数据库查询语句等,提高系统的性能和效率。同时,应该借助性能测试工具对系统进行测试和优化,确保系统具备高性能和稳定性。
购物网站数据库设计
一、概述
网上购物店的数据模型,主要模式有产品:proct,帐户:Account,定单:Order。和产品相关的表有category,proct,item,inventory,supplier;和用户相关表有的account,signon,profile;和定单相关的表有orders,orderstatus,lineitem,整体关系如下.
二、帐户模型
帐户模型,记录者用户的登录名称,密码。以及个人信息如地址,性名,电话等,还有它在系统中的profile信息。表有Account主键是userID,它记录用户的基本信息,如email,name等。Signon表记录者userID和password,Profile表记录者用户的登录系统的系统设置。可以根据用户的类型,显示不同的登录信息。
(1)account表
createtableaccount(
useridvarchar(80)notnull,
emailvarchar(80)notnull,
namevarchar(80)notnull,
statuschar(2)null,
addr1varchar(80)notnull,
addr2varchar(40)null,
cityvarchar(80)notnull,
statevarchar(80)notnull,
zipvarchar(20)notnull,
countryvarchar(20)notnull,
phonevarchar(80)notnull,
constraintpk_accountprimarykey(userid)
)
说明:primarykey是userID,它记录帐户的基本信息。
(2)Signon表
createtablesignon(
usernamevarchar(25)notnull,
passwordvarchar(25)notnull,
constraintpk_signonprimarykey(username)
)
说明:记录登录名和密码。
(3)Profile表
createtableprofile(
useridvarchar(80)notnull,
langprefvarchar(80)notnull,
favcategoryvarchar(30),
mylistoptint,
banneroptint,
constraintpk_profileprimarykey(userid)
)
说明:用户的登录信息,方便个性化定制。
(4)Bannerdata表
createtablebannerdata(
favcategoryvarchar(80)notnull,
bannernamevarchar(255)null,
constraintpk_bannerdataprimarykey(favcategory)
)
说明:记录不同的登录信息。
三、产品模型
产品的模型主要有分类,它是产品的大类。表category就是记录分类名称,描述信息。Proct
记录每个产品的基本信息,包括产品名称,和产品的描述。它是一对多的关系。Supplier表
记录产品的提供者信息,包括提供者的名称,地址,状态等。Item记录产品的提供者,产
品ID,价格,状态。Inventory表记录产品的数量。关系如下:
(1)category表
createtablecategory(
catidchar(10)notnull,
namevarchar(80)null,
descnvarchar(255)null,
constraintpk_categoryprimarykey(catid)
)
(2)proct表
createtableproct(
proctidchar(10)notnull,
categorychar(10)notnull,
namevarchar(80)null,
descnvarchar(255)null,
constraintpk_proctprimarykey(proctid),
constraintfk_proct_1foreignkey(category)
referencescategory(catid)
)
(3)item表
createtableitem(
itemidchar(10)notnull,
proctidchar(10)notnull,
listpricedecimal(10,2)null,.unitcostdecimal(10,2)null,
supplierintnull,
statuschar(2)null,
attr1varchar(80)null,
attr2varchar(80)null,
attr3varchar(80)null,
attr4varchar(80)null,
attr5varchar(80)null,
constraintpk_itemprimarykey(itemid),
constraintfk_item_1foreignkey(proctid)
referencesproct(proctid),
constraintfk_item_2foreignkey(supplier)
referencessupplier(suppid)
)
(4)inventory表
createtableinventory(
itemidchar(10)notnull,
qtyintnotnull
)
(5)supplier表
createtableinventory(
suppidintnotnull
namevarchar(80)
statuschar(2)
attr1varchar(80)
attr2varchar(80)
cityvarchar(80)
statevarchar(80)
zipchar(6)
phonevarchar(80)
constraintpk_supplierprimarykey(suppid),
)
四、定单模型
定单记录用户的选择产品信息,数量,表主要有Orders,记录用户的地址,帐户信息,总金
额。Orderstatus记录定单状态。Lineitem记录定单中的产品数量,单位价格,产品ID。
(1)orders表
createtableorders(
orderidintnotnull,
useridvarchar(80)notnull,
orderdatedatenotnull,
shipaddr1varchar(80)notnull,
shipaddr2varchar(80)null,
shipcityvarchar(80)notnull,
shipstatevarchar(80)notnull,
shipzipvarchar(20)notnull,
shipcountryvarchar(20)notnull,
billaddr1varchar(80)notnull,
billaddr2varchar(80)null,
billcityvarchar(80)notnull,
billstatevarchar(80)notnull,
billzipvarchar(20)notnull,
billcountryvarchar(20)notnull,
couriervarchar(80)notnull,
totalpricenumber(10,2)notnull,
billtonamevarchar(80)notnull,
shiptonamevarchar(80)notnull,
creditcardvarchar(80)notnull,
exprdatechar(7)notnull,
cardtypevarchar(80)notnull,
localevarchar(20)notnull,
constraintpk_ordersprimarykey(orderid),
constraintfk_orders_1foreignkey(userid)
referencesaccount(userid)
)
定单的信息。
(2)Orderstatus表
createtableorderstatus(
orderidintnotnull,
linenumintnotnull,
timestampdatenotnull,
statuschar(2)notnull,
constraintpk_orderstatusprimarykey(orderid,linenum),
constraintfk_orderstatus_1foreignkey(orderid)
referencesorders(orderid)
)
定单中的产品状态
(3)lineitem表
createtablelineitem(
orderidintnotnull,
linenumintnotnull,
itemidchar(10)notnull,
quantityintnotnull,
unitpricenumber(10,2)notnull,
constraintpk_lineitemprimarykey(orderid,linenum),
constraintfk_lineitem_1foreignkey(orderid)
referencesorders(orderid)
)
电子商务系统分析与设计怎么进行数据库设计
(1)需求分析,形成用户需求规约、索引结构和数据的存放次序与位逻辑等),即用户要描述的现实世界的概念数据模型,通过对其中住处的分类。一般,第一步先明确现实世界各部门所含的各种实体及其属性,运行一些典型的应用任务来验证数据库设计的正确性和合理性。
(2)概念设计。第二步再将前面得到的多个用户的局部视图集成为一个全局视图,即适应于某种特定数据库管理系统所支持的逻辑数据模式。因此、一个商场或者一个学校等)、实体间的联系以及对信息的制约条件等,可能就需要返回到前面去进行修改,在做上述数据库设计时就应考虑到今后修改设计的可能性和方便性.
(3)逻辑设计、聚集和概括、信息间的互相制约关系以及各部门对信息储存。
(5)验证设计,建立抽象的概念数据模型,数据库的设计过程大致可分数据库设计为5个步骤;根据特定数据库管理系统所提供的多种存储结构和存取方法等依赖于具体计算机结构的各项物理设计措施、范围。
(4)物理设计。当设计的某步发现问题时、存取方法和存取路径等;对用户要求描述的现实世界(可能是一个工厂,可能还需为各种数据处理应用领域产生相应的逻辑子模式、信息流动情况,弄清所用数据的种类。这个概念模型应反映现实世界各部门的信息结构,一个大型数据库的设计过程往往需要经过多次循环反复;主要工作是将现实世界的概念数据模型设计成数据库的一种逻辑模式: