Skip to content

package laravel for generate auto number with some code string

Notifications You must be signed in to change notification settings

ramdani10/lara-autonumber

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Laravel package to create autonumber for Eloquent model

Installation

install the package via composer:

composer require ramdani10/lara-autonumber

Register the ServiceProvider in config/app.php

'providers' => [
    // ...
    Ramdani10\AutoNumber\AutoNumberServiceProvider::class,
],

Publish configuration

php artisan vendor:publish --provider='Ramdani\AutoNumber\AutoNumberServiceProvider'

Running migration

php artisan migrate

Usage

use the Ramdani10\AutoNumber\AutoNumberTrait trait in model

implement method getAutoNumberOptions().

use Ramdani10\AutoNumber\AutoNumberTrait;
    
class Category extends Model
{
    use AutoNumberTrait;
    
    /**
     * Return the autonumber configuration array for this model.
     *
     * @return array
     */
    public function getAutoNumberOptions()
    {
        return [
            'code' => [
                'format' => 'CA.?', // autonumber format. '?' will be replaced with the generated number.
                'length' => 3 // digits number
            ]
        ];
    }

}

pass a closure for the format value.

public function getAutoNumberOptions()
{
    return [
        'order_number' => [
            'format' => function () {
                return 'CA/' . date('Ymd') . '/?'; // autonumber format. '?' will be replaced with the generated number.
            }
            'length' => 5 // The number of digits in the autonumber
        ]
    ];
}

Saving Model

$category = Category::create([
    'name' => 'Category A',
]);

The code will be automatically generated based on the format.

dd($category->code);

// CA/20170803/00001

About

package laravel for generate auto number with some code string

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages