流明:每月自动增加并自动重置Transaction_ID

时间:2019-11-12 10:55:31

标签: laravel lumen

我试图生成格式为“ 2000-yymmm-0000”的随机transaction_id

我已经知道如何设置transaction_id,但是我对将“ 2000-yymm-0000”的自动增量设置为“ 2000-yymm-0001”并自动重置为“ 2000- yymm-0000”。每个新月。

我将此逻辑放在控制器的不同路径上。

PS:我将Lumen 6.0和Laravel 6.0一起使用。

我正在尝试使用以下方法创建增量:

$number = sprintf('%04d', 0000);
$number++;

但是没有用。

$year = 2000;
$time = date('ym');
$number = sprintf('%04d', 0000);
$transaction_id = $year . '-' . $time . '-' . $number;
$transaction_data = explode('-', $transaction_id);
$month = date("m", strtotime($transaction_data[0])); 

我希望每次将新数据存储到数据库时结果都会自动增加。但是实际结果是transaction_id始终具有相同的值2000-yymm-0000

我在做什么错了?

1 个答案:

答案 0 :(得分:0)

我知道回答自己的问题很奇怪,但是我已经找到了解决方法。

Models/Order.php中 我创建了这样的函数。

    public function count()
    {
     $this->where(transaction_id)->count();
    }

之后,我从Model/Order.phpOrdersController.php调用函数

    public function create(Request $request)
    {   

       $year = 2000;
       $date = date('ym');
       $total_data = $this->table->count();
       $number = str_pad($total_data + 1, 4, 0, STR_PAD_LEFT);
       $transaction_id = $year . '-' . $date . '-' . $number;

       return $this->success('count all transaction id', $t_id);
     }