自定义hybris生成订单的ID格式

Posted sap-jerry

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自定义hybris生成订单的ID格式相关的知识,希望对你有一定的参考价值。

在项目local.properties里做出如下定义:

keygen.order.code.digits=8
keygen.order.code.start=00000000
keygen.order.code.numeric=true
keygen.order.code.template=$

技术图片
技术图片

core-spring.xml:

<bean id="orderCodeGenerator" class="de.hybris.platform.servicelayer.keygenerator.impl.PersistentKeyGenerator">
<property name="key" value="${keygen.order.code.name}"/>
<property name="digits" value="${keygen.order.code.digits}"/>
<property name="start" value="${keygen.order.code.start}"/>
<property name="numeric" value="${keygen.order.code.numeric}"/>
<property name="template" value="${keygen.order.code.template}"/>

效果如下:

技术图片
技术图片

修改定义后,如果不想重启Hybris server也能让他们立即生效,使用如下Java代码:

import de.hybris.platform.jalo.numberseries.*
NumberSeriesManager nm = NumberSeriesManager.getInstance()
def s = nm.getNumberSeries("order_code")
println "Before: current: ${s.currentNumber} type: ${s.type} template: ${s.template}"
nm.resetNumberSeries(s.key, "777", s.type, s.template )
def s2 = nm.getNumberSeries("order_code")
println "After: current: ${s2.currentNumber} type: ${s2.type} template: ${s2.template}"

要获取更多Jerry的原创文章,请关注公众号"汪子熙":
技术图片

以上是关于自定义hybris生成订单的ID格式的主要内容,如果未能解决你的问题,请参考以下文章

如何从 Hybris 店面的购物车生成多个订单?

声纳 jacoco hybris

如何自定义 pcm 后台以过滤 Hybris 中的超类别搜索结果

SpringJPA主键生成采用自定义ID,自定义ID采用年月日时间格式

自定义属性的 Hybris 同步错误

VS Code中自定义Emmet代码片段