如何生成好用又好看的订单号

订单号

概念

它是您在购物网站购物后获得的订单号,记录的是购物订单信息。

作用

在您需要与购物网站进行订单查询等操作时,需要给购物网站提供商家订单号。

几种下单途径?

  1. web网站下单
  2. 打电话到呼叫中心(CallCenter)下单
  3. 手机wap下单

如果采用单数据库来存储的话,随着订单量的增加,单库的写压力增大,造成数据库服务器性能下降。一般会采用分库来缓解数据库服务器的压力。

那么怎么来进行分库呢?

web来源订单,存入web订单库。
CallCenter来源订单,存入CallCenter订单库。
wap来源订单,存入wap订单库。
最终,将这三种类型的数据库同步到订单主库中。

问题来了,怎么把不同的订单同步到订单主库呢?

电商网站一般利用订单号来作为订单表的主键。因此,我们必须保证订单号不重复,才能将订单安全的同步到订单主库中。

订单命名规定

唯一性

这个大家都明白,主要保证订单号不重复。

安全性

订单编号不能透露你公司的真实运营信息,比如你的订单就是流水号的话,那么别人就可以从订单号推测出你公司的整体运营概括了。所以订单编码必须是除了你们公司少部分人外,其他人基本看不懂的。可以参考京东和淘宝的编码规则。

不能使用大规模随机码

因为大规模的随机码随机生成,因为本身就没有意义所以无所谓泄密了。但是事实上这种编码规则在实现上会有很大问题的。随机码满足第二点安全性要求,为了满足唯一性,那就得在生成随机码的时候对比历史数据是否有重复,如果你的订单数量到达了十万次,你每次生成订单编码时就得对比十万条历史数据。

随机码就不能在编码中使用了吗?小规模的随机码是可以使用的,比如2~3位,这种随机码一般都是和流水号等结合使用,主要作用是为了隐藏流水号的真实数据而进行使用的。

防止并发

主要针对编码中有时间的设定。

控制位数

订单号的作用就是便于查询。一般正常使用场景应该是订单出异状或者退货的时候,用户将订单号报给客服,由客服进行查询。所以一般在10~15位为好。目前京东11位,淘宝16位。

怎么保证订单号的唯一性

订单号命名规则来生成

比如“业务编码 + 时间戳 + 机器编号[前4位] + 随机4位数 + 毫秒数”。

另外一种建议

下单渠道1位+支付渠道1位+业务类型1位+时间信息4位+下单时间的Unix时间戳后8位(或是这8位数字加上随机码和随机规则进行随机后的数字)+用户user id后4位。然后你会说,这样算下来就订单号就19位了啊,一点都不精简啊,不好记不好念不好输的。但我说的上面的这些业务标记,你不一定要全部加上啊。

转载地址https://sanwen8.cn/p/567zsX2.html

一个简单实用 页面漂亮的订货系统 1企业应付单除了记录该应付单据单头信息外,还应该记录该应付单据上物料的具体种类、数量、单价等信息,此外通过该应付单还应该能够查询到应付供应商的信息。 2.本系统应有三种权限的用户,分别为基础数据定义员,管理员和业务操作员。对于不同权限的用户,系统应支持相应的功能, 3.管理员的用户类型(yhlx)为2,主要负责对用户的管理,可以实现对用户的添加、修改、删除功能。 4.业务操作员的用户类型为1(yhlx),主要负责基本业务的操作,包括对各相关数据表的插入、修改、删除,以及对各表格中不同字段的查询(包括精确查询和模糊查询)。还有按照不同的关键字(供应商、物料编码)进行分类查询和应付单生成。 5. 基础数据定义员用户类型类型为2(yhlx),负责对基础数据的提前定义,需要提前定义的基础数据有:币别、应付单类型、物流基本信、供应商基本信息等。 6..应付单信息应包括单据日期,单据号,应付供应商,币别,应付单类型,采购员,到货单号,物料编码,单价,计量单位,合计金额。 7.供应商信息应包括:供应商编码、供应商简称、供应商名称、建立日期所属地区、所属行业、企业性质、法人代表、主管部门、邮政编码、电话、传真、通信地址、E-mail地址、供应商网址、开户银行、银行帐号、币别、纳税登记号信誉级别、应付票据科目、信誉金额、应付帐科目、信誉天数、结算周期、说明。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值