Skip to content

Commit

Permalink
Upgrade predefined columns
Browse files Browse the repository at this point in the history
  • Loading branch information
krzysztofzylka committed Jan 21, 2025
1 parent 2937ae0 commit 82f8b17
Showing 1 changed file with 37 additions and 9 deletions.
46 changes: 37 additions & 9 deletions src/Trait/TablePredefinedColumn.php
Original file line number Diff line number Diff line change
Expand Up @@ -44,13 +44,14 @@ public function addIdColumn(): CreateTable
* Add email column
* @param bool $null is nullable
* @param ?string $name column name
* @param int $size size
* @return CreateTable
*/
public function addEmailColumn(bool $null = true, ?string $name = 'email'): CreateTable
public function addEmailColumn(bool $null = true, ?string $name = 'email', int $size = 255): CreateTable
{
$column = (new Column())
->setName($name)
->setType(ColumnType::varchar, 255)
->setType(ColumnType::varchar, $size)
->setNull($null);

$this->addColumn($column);
Expand All @@ -62,13 +63,14 @@ public function addEmailColumn(bool $null = true, ?string $name = 'email'): Crea
* Add username column
* @param bool $null is nullable
* @param ?string $name column name
* @param int $size
* @return CreateTable
*/
public function addUsernameColumn(bool $null = true, ?string $name = 'username'): CreateTable
public function addUsernameColumn(bool $null = true, ?string $name = 'username', int $size = 255): CreateTable
{
$column = (new Column())
->setName($name)
->setType(ColumnType::varchar, 255)
->setType(ColumnType::varchar, $size)
->setNull($null);

$this->addColumn($column);
Expand All @@ -80,13 +82,14 @@ public function addUsernameColumn(bool $null = true, ?string $name = 'username')
* Add password column
* @param bool $null is nullable
* @param ?string $name column name
* @param int $size
* @return CreateTable
*/
public function addPasswordColumn(bool $null = true, ?string $name = 'password'): CreateTable
public function addPasswordColumn(bool $null = true, ?string $name = 'password', int $size = 255): CreateTable
{
$column = (new Column())
->setName($name)
->setType(ColumnType::varchar, 255)
->setType(ColumnType::varchar, $size)
->setNull($null);

$this->addColumn($column);
Expand Down Expand Up @@ -154,15 +157,20 @@ public function addDateModifyColumn(?string $name = 'date_modify'): CreateTable
* @param string $name column name
* @param int $size varchar length, default 255
* @param bool $null allow null value
* @param string|null $default
* @return CreateTable
*/
public function addSimpleVarcharColumn(string $name, int $size = 255, bool $null = true): CreateTable
public function addSimpleVarcharColumn(string $name, int $size = 255, bool $null = true, ?string $default = null): CreateTable
{
$column = (new Column())
->setName($name)
->setType(ColumnType::varchar, $size)
->setNull($null);

if (!is_null($default)) {
$column->setDefault($default);
}

$this->addColumn($column);

return $this;
Expand All @@ -172,14 +180,16 @@ public function addSimpleVarcharColumn(string $name, int $size = 255, bool $null
* Add simple int column
* @param string $name column name
* @param bool $null allow null value
* @param bool $unsigned
* @return CreateTable
*/
public function addSimpleIntColumn(string $name, bool $null = true): CreateTable
public function addSimpleIntColumn(string $name, bool $null = true, bool $unsigned = false): CreateTable
{
$column = (new Column())
->setName($name)
->setType(ColumnType::int)
->setNull($null);
->setNull($null)
->setUnsigned($unsigned);

$this->addColumn($column);

Expand Down Expand Up @@ -223,6 +233,24 @@ public function addSimpleFloatColumn(string $name, string $size = '16,2', ?float
return $this;
}

/**
* Add simple float column
* @param string $name
* @param string $size
* @param float|null $default
* @return CreateTable
*/
public function addSimpleDecimalColumn(string $name, string $size = '16,2', ?float $default = null): CreateTable
{
$column = (new Column())
->setName($name)
->setType(ColumnType::decimal, $size)
->setDefault($default);

$this->addColumn($column);

return $this;
}
/**
* Add simple text column
* @param string $name
Expand Down

0 comments on commit 82f8b17

Please sign in to comment.