Documentation

AgencyLicenseRepository extends Repository

This class provides methods to manage AgencyLicense instances and persistence

Table of Contents

PAGINATION_LIMIT  = 15
RESPONSE_STATUS_ERROR  = 'error'
RESPONSE_STATUS_FAIL  = 'fail'
RESPONSE_STATUS_SUCCESS  = 'success'
$agencyRepo  : mixed
Repo var
$model  : mixed
$repo  : mixed
__construct()  : mixed
all()  : array<string|int, mixed>
Get all instances of model
allChild()  : array<string|int, object>
Returns all licenses for a given agency
cleanNullValues()  : null
Change null values and put string("")
create()  : object
Create a new record in the database
delete()  : bool
It soft-deletes a record from the database
ensureHttp400Code()  : string
Return a extension from mimetype
firstOrCreate()  : object
Retrieves first element of the database. If it doesn't exists, it creates it before returning it.
firstOrNew()  : object
Retrieves first element of the database. If it doesn't exists, it instanciates it before returning it.
forceDelete()  : bool
It definitely removes a record from the database
getConcatString()  : string
Concatenate string to make it compatible with SQLite
getErrorResponse()  : array<string|int, mixed>
Return all an array of errors like validation in one format
getFailResponse()  : array<string|int, mixed>
Return all an array of errors like validation in one format
getModel()  : Model
Get the associated model
getSuccessResponse()  : array<string|int, mixed>
Return all an array of errors like validation in one format
microsecondsToSeconds()  : array<string|int, mixed>
Return all an array of errors like validation in one format
mime2ext()  : string
Return a extension from mimetype
orderQuery()  : null
Destroy record from the database
paginate()  : Model
sendMail()  : bool
Send an email
setModel()  : mixed
Set the associated model
show()  : object
Show the record with the given id
showChild()  : object
Shows a record for a given id, ensuring it exists in its parent.
showWith()  : Model
Eager load database relationships
storeChild()  : void
Creates a License to attach it to a given Agency.
update()  : object
Updates a record in the database
updateChild()  : void
Updates a License, making sure it belongs to a given Agency.

Constants

PAGINATION_LIMIT

public mixed PAGINATION_LIMIT = 15

RESPONSE_STATUS_ERROR

public mixed RESPONSE_STATUS_ERROR = 'error'

RESPONSE_STATUS_FAIL

public mixed RESPONSE_STATUS_FAIL = 'fail'

RESPONSE_STATUS_SUCCESS

public mixed RESPONSE_STATUS_SUCCESS = 'success'

Properties

Methods

all()

Get all instances of model

public all() : array<string|int, mixed>
Return values
array<string|int, mixed>

allChild()

Returns all licenses for a given agency

public allChild(int $parent_id) : array<string|int, object>
Parameters
$parent_id : int
  • Parent of the object that we want to list.
Tags
throws
Exception
Return values
array<string|int, object>

cleanNullValues()

Change null values and put string("")

public cleanNullValues(array<string|int, mixed> &$data[, array<string|int, mixed> $exceptions = [] ]) : null
Parameters
$data : array<string|int, mixed>
  • Array with parameters
$exceptions : array<string|int, mixed> = []
  • Array with exceptions keys
Return values
null

create()

Create a new record in the database

public create(array<string|int, mixed> $data) : object
Parameters
$data : array<string|int, mixed>
  • Data of the object that we want to create.
Tags
throws
Exception
Return values
object

delete()

It soft-deletes a record from the database

public delete(array<string|int, mixed> $data, int $id) : bool
Parameters
$data : array<string|int, mixed>
$id : int
  • Id of the object that we want to remove.
Tags
throws
Exception
Return values
bool
  • Success or fail

ensureHttp400Code()

Return a extension from mimetype

public ensureHttp400Code(mixed $code) : string
Parameters
$code : mixed
Return values
string

firstOrCreate()

Retrieves first element of the database. If it doesn't exists, it creates it before returning it.

public firstOrCreate(array<string|int, mixed> $data) : object
Parameters
$data : array<string|int, mixed>
  • Data of the object that we want to create.
Tags
throws
Exception
Return values
object

firstOrNew()

Retrieves first element of the database. If it doesn't exists, it instanciates it before returning it.

public firstOrNew(array<string|int, mixed> $data) : object
Parameters
$data : array<string|int, mixed>
  • Data of the object that we want to create.
Tags
throws
Exception
Return values
object

forceDelete()

It definitely removes a record from the database

public forceDelete(array<string|int, mixed> $data, int $id) : bool
Parameters
$data : array<string|int, mixed>
$id : int
  • Id of the object that we want to remove.
Tags
throws
Exception
Return values
bool
  • Success or fail

getConcatString()

Concatenate string to make it compatible with SQLite

public getConcatString( $firstField,  $secondField[,  $concatCharacter = ' ' ]) : string
Parameters
$firstField :

to concat

$secondField :

to concat

$concatCharacter : = ' '

Character used to join fields, default is space

Return values
string

getErrorResponse()

Return all an array of errors like validation in one format

public getErrorResponse(mixed $message[, mixed $code = null ]) : array<string|int, mixed>
Parameters
$message : mixed
$code : mixed = null
Return values
array<string|int, mixed>

getFailResponse()

Return all an array of errors like validation in one format

public getFailResponse(array<string|int, mixed> $data) : array<string|int, mixed>
Parameters
$data : array<string|int, mixed>
  • Array with parameters
Return values
array<string|int, mixed>

getModel()

Get the associated model

public getModel() : Model
Return values
Model

$model - A specific model

getSuccessResponse()

Return all an array of errors like validation in one format

public getSuccessResponse([array<string|int, mixed> $data = "" ]) : array<string|int, mixed>
Parameters
$data : array<string|int, mixed> = ""
  • Array with parameters
Return values
array<string|int, mixed>

microsecondsToSeconds()

Return all an array of errors like validation in one format

public microsecondsToSeconds(mixed $microseconds) : array<string|int, mixed>
Parameters
$microseconds : mixed
Return values
array<string|int, mixed>

mime2ext()

Return a extension from mimetype

public mime2ext(string $mime) : string
Parameters
$mime : string
  • String with mimetype
Return values
string

orderQuery()

Destroy record from the database

public orderQuery(mixed &$query, array<string|int, mixed> $params) : null
Parameters
$query : mixed
$params : array<string|int, mixed>
  • Array with the pagination params
Return values
null

paginate()

public paginate(mixed $paginationLimit) : Model
Parameters
$paginationLimit : mixed
Tags
desc

Get items with pagination

Return values
Model

$model - N instances of mode

sendMail()

Send an email

public sendMail( $mail, string $toEmail[, string $bccEmail = null ]) : bool
Parameters
$mail :
  • Mailable extended class to send
$toEmail : string
  • Delivery address
$bccEmail : string = null
  • Black carbon copy address
Return values
bool

setModel()

Set the associated model

public setModel(Model $model) : mixed
Parameters
$model : Model
  • A specific model
Return values
mixed

show()

Show the record with the given id

public show(int $id) : object
Parameters
$id : int
  • Id of the object that we want to show.
Return values
object

showChild()

Shows a record for a given id, ensuring it exists in its parent.

public showChild(int $parent_id, int $id) : object
Parameters
$parent_id : int
$id : int
  • Id of the object that we want to show.
Return values
object

showWith()

Eager load database relationships

public showWith(mixed $id, string $relations) : Model
Parameters
$id : mixed
$relations : string
  • A name of relations to add
Return values
Model

$model - A specific model

storeChild()

Creates a License to attach it to a given Agency.

public storeChild(array<string|int, mixed> $data, int $parent_id) : void

The system always creates new License records to attach to an Agency.
We only check that for a given date, there is an active License.
Does not remove previous licenses to have a history of all Licenses for an Agency

Parameters
$data : array<string|int, mixed>
[
'license_id' => 'required|numeric|exists:licenses,id',
'start_at'   => 'sometimes|date|after_or_equal:today,
'paid'       => 'required|boolean',
'active'     => 'required|boolean',
]
$parent_id : int
  • Id of the object that we want to update.
Tags
throws
ValidationException
Return values
void

update()

Updates a record in the database

public update(array<string|int, mixed> $data, int $id) : object
Parameters
$data : array<string|int, mixed>
  • Datas of the object that we want to update.
$id : int
  • Id of the object that we want to update.
Tags
throws
Exception
Return values
object

updateChild()

Updates a License, making sure it belongs to a given Agency.

public updateChild(array<string|int, mixed> $data, int $parent_id, int $id) : void

If the user is owner of a License or Admin, the system allows to update paid and/or active attributes. No other field is allowed to be changed

Parameters
$data : array<string|int, mixed>

Datas of the object that we want to update.

[
'paid'       => 'required|boolean',
'active'     => 'required|boolean',
]
$parent_id : int
  • Agency's id
$id : int
  • Id of the object that we want to update.
Tags
throws
Exception
Return values
void

Search results