laravel订单编号方法
/**
* 生产订单编号
* @return mixed
* @throws Exception
*/
public function generateOrderSn()
{
//该方法是如果抛出异常就再试一次,如果没有就直接返回正确
return retry(5, function () {
$orderSn = date('YmdHis').Str::random(6);
//判断订单编号有没有被使用过
if (!$this->isOrderSnUsed($orderSn)) {
return $orderSn;
}
\Log::warning('订单号获取失败,orderSn:'.$orderSn);
$this->throwBusinessException(CodeResponse::FAIL, '订单号获取失败');
});
}
public function isOrderSnUsed($orderSn)
{
return Order::query()->where('order_sn', $orderSn)->exists();
}
最后更新于 2022-08-26 16:26:27 并被添加「」标签,已有 1034 位童鞋阅读过。
本站使用「署名 4.0 国际」创作共享协议,可自由转载、引用,但需署名作者且注明文章出处
此处评论已关闭