165 lines
5.3 KiB
PHP
Executable File
165 lines
5.3 KiB
PHP
Executable File
<?php
|
|
namespace IpSupply\CartToQuote\Setup;
|
|
|
|
use Magento\Framework\Setup\SchemaSetupInterface;
|
|
use Magento\Framework\Setup\ModuleContextInterface;
|
|
use Magento\Framework\DB\Ddl\Table;
|
|
|
|
class InstallSchema implements \Magento\Framework\Setup\InstallSchemaInterface
|
|
{
|
|
|
|
public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
|
|
{
|
|
$setup->startSetup();
|
|
|
|
$connection = $setup->getConnection();
|
|
$tableCartItem = $setup->getTable("ip_supply_cart_to_quote_item");
|
|
$tableCartHistory = $setup->getTable("ip_supply_cart_to_quote_history");
|
|
$tableCartdetail = $setup->getTable("ip_supply_cart_to_quote_detail");
|
|
|
|
if ($connection->isTableExists($tableCartItem) != true) {
|
|
$table = $connection->newTable($tableCartItem)->addColumn(
|
|
'id',
|
|
Table::TYPE_INTEGER,
|
|
null,
|
|
['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true]
|
|
)->addColumn(
|
|
'product_id',
|
|
Table::TYPE_INTEGER,
|
|
null,
|
|
['nullable' => false]
|
|
)->addColumn(
|
|
'email',
|
|
Table::TYPE_TEXT,
|
|
255,
|
|
['nullable' => false, 'default' => '']
|
|
)
|
|
->addColumn(
|
|
'name',
|
|
Table::TYPE_TEXT,
|
|
255,
|
|
['nullable' => false, 'default' => '']
|
|
)->addColumn(
|
|
'url',
|
|
Table::TYPE_TEXT,
|
|
255,
|
|
['nullable' => false, 'default' => '']
|
|
)->addColumn(
|
|
'image',
|
|
Table::TYPE_TEXT,
|
|
255,
|
|
['nullable' => false, 'default' => '']
|
|
)->addColumn(
|
|
'sku',
|
|
Table::TYPE_TEXT,
|
|
255,
|
|
['nullable' => false, 'default' => '']
|
|
)->addColumn(
|
|
'qty',
|
|
Table::TYPE_INTEGER,
|
|
null,
|
|
['nullable' => false, 'default' => 0]
|
|
)->addColumn(
|
|
'customer_id',
|
|
Table::TYPE_INTEGER,
|
|
null,
|
|
['nullable' => false]
|
|
)->addColumn(
|
|
'price',
|
|
Table::TYPE_DECIMAL,
|
|
null,
|
|
['nullable' => false, 'default' => 0, 'scale'=> 1, 'precision'=> 13]
|
|
)
|
|
->setOption('charset', 'utf8');
|
|
|
|
$connection->createTable($table);
|
|
}
|
|
|
|
if ($connection->isTableExists($tableCartHistory) != true) {
|
|
$table = $connection->newTable($tableCartHistory)->addColumn(
|
|
'id',
|
|
Table::TYPE_INTEGER,
|
|
null,
|
|
['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true]
|
|
)->addColumn(
|
|
'date',
|
|
Table::TYPE_TIMESTAMP,
|
|
null,
|
|
['nullable' => false, 'default' => 'CURRENT_TIMESTAMP']
|
|
)->addColumn(
|
|
'items_total',
|
|
Table::TYPE_INTEGER,
|
|
null,
|
|
['nullable' => false]
|
|
)->addColumn(
|
|
'customer_id',
|
|
Table::TYPE_INTEGER,
|
|
null,
|
|
['nullable' => false]
|
|
)
|
|
->setOption('charset', 'utf8');
|
|
|
|
$connection->createTable($table);
|
|
}
|
|
|
|
if ($connection->isTableExists($tableCartdetail) != true) {
|
|
$table = $connection->newTable($tableCartdetail)->addColumn(
|
|
'id',
|
|
Table::TYPE_INTEGER,
|
|
null,
|
|
['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true]
|
|
)->addColumn(
|
|
'product_id',
|
|
Table::TYPE_INTEGER,
|
|
null,
|
|
['nullable' => false]
|
|
)
|
|
->addColumn(
|
|
'name',
|
|
Table::TYPE_TEXT,
|
|
255,
|
|
['nullable' => false, 'default' => '']
|
|
)->addColumn(
|
|
'url',
|
|
Table::TYPE_TEXT,
|
|
255,
|
|
['nullable' => false, 'default' => '']
|
|
)->addColumn(
|
|
'image',
|
|
Table::TYPE_TEXT,
|
|
255,
|
|
['nullable' => false, 'default' => '']
|
|
)->addColumn(
|
|
'sku',
|
|
Table::TYPE_TEXT,
|
|
255,
|
|
['nullable' => false, 'default' => '']
|
|
)->addColumn(
|
|
'qty',
|
|
Table::TYPE_INTEGER,
|
|
null,
|
|
['nullable' => false, 'default' => 0]
|
|
)->addColumn(
|
|
'customer_id',
|
|
Table::TYPE_INTEGER,
|
|
null,
|
|
['nullable' => false]
|
|
)->addColumn(
|
|
'price',
|
|
Table::TYPE_DECIMAL,
|
|
null,
|
|
['nullable' => false, 'default' => 0, 'scale'=> 1, 'precision'=> 13]
|
|
)->addColumn(
|
|
'quote_history_id',
|
|
Table::TYPE_INTEGER,
|
|
null,
|
|
['nullable' => false]
|
|
)
|
|
->setOption('charset', 'utf8');
|
|
|
|
$connection->createTable($table);
|
|
}
|
|
|
|
$setup->endSetup();
|
|
}
|
|
} |