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

举报
汪子熙 发表于 2022/01/30 10:30:35 2022/01/30
【摘要】 在项目local.properties里做出如下定义:keygen.order.code.digits=8keygen.order.code.start=00000000keygen.order.code.numeric=truekeygen.order.code.template=$core-spring.xml:<bean id="orderCodeGenerator" class="d...

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

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

clipboard1,1
clipboard2,2

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}"/>

效果如下:

clipboard3,3
clipboard4,4

修改定义后,如果不想重启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}"

backoffice里创建一个新订单,维护一个行项目,添加一个产品:

clipboard1,1

在行项目的SubTotal界面,维护Base Price,在Discount values字段里,输入折扣信息:discount: 10.00%:

clipboard2,2

回到order界面,点击重新计算价格的按钮,就能看到1 * 10 = 9 美元的信息了,说明折扣已经生效。

clipboard3,3

参考了这个SAP帮助文档:

clipboard4,4

帮助文档路径:Commerce Platform Module->Commerce Platform Module Implementation->Ordering, Payment and Pricing Standards->Price, Tax and Discount Calculation->europe1 Extension->Editing Tax and Discount Values of an Order in Backoffice

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。