LaravelPackages.net
Acme Inc.
Toggle sidebar
stryksta/referencenumber

Generate a Reference Number when saving Eloquent models

2
1
v1.0.1
About stryksta/referencenumber

stryksta/referencenumber is a Laravel package for generate a reference number when saving eloquent models. It currently has 1 GitHub stars and 2 downloads on Packagist (latest version v1.0.1). Install it with composer require stryksta/referencenumber. Discover more Laravel packages by stryksta or browse all Laravel packages to compare alternatives.

Last updated

#Laravel Reference Number Trait

Generate a reference number for Invoices, Payment Transactions, Form Submissions, etc

Installation

You can install the package via composer:

composer require stryksta/referencenumber

Options

| Option | Type | Default | Description | | ------------ | ------------ | ------------ | ------------ | | field | string | reference_number | This is used to identify the field the generated reference number will be saved to. | | start | integer | 0 | This is where incrementing will start. When generating a reference number this will always increment by 1. So if you start at 0, your first reference will be 1. | | prefix | string | '' | This is a string you want added in front of every reference number | | suffix | string | '' | This is a string you want added to the end of every reference number | | padding | integer | '' | This will pad the reference number to a specified length. For example, setting padding to 3 will generate 001, 002, 003 and so on. |

Usage

  1. Your model should use the Stryksta\ReferenceNumber\GenerateReferenceNumber trait
  2. You should have a field to save the generated reference number to.

Here's an example of how to implement the trait:

<?php

namespace App;

use Stryksta\ReferenceNumber\GenerateReferenceNumber;
use Illuminate\Database\Eloquent\Model;

class SubmissionModel extends Model
{
    use GenerateReferenceNumber;
   
    /**
     * Get the options for generating a reference number
     */
    public function referenceNumberOptions()
    {
        return [
            'field' => 'reference_number',
            'start' => 0,
            'prefix' => 'S',
            'suffix' => '',
            'padding' => 3,
        ];
    }
}
    public function create() {
        $model = new SubmissionModel();
        $model->name = 'John Smith';
        $model->comment = 'Hello';
        $model->save();

        echo $model->reference_number; // ouputs "S001"
}

Changelog

1.0.0 - 2020-01-03

  • Initial release

Testing

composer test

Contributing

Suggestions, Improvements, and any other comments are welcome!

License

The MIT License (MIT). Please see License File for more information.

Star History Chart