Worked on catalog

This commit is contained in:
Franck Allimant
2013-10-23 23:41:39 +02:00
parent ada32660fe
commit 0bd57b0a5a
46 changed files with 3483 additions and 3009 deletions

View File

@@ -50,7 +50,7 @@ CREATE TABLE `product`
FOREIGN KEY (`tax_rule_id`)
REFERENCES `tax_rule` (`id`)
ON UPDATE RESTRICT
ON DELETE SET NULL,
ON DELETE RESTRICT,
CONSTRAINT `fk_product_template`
FOREIGN KEY (`template_id`)
REFERENCES `template` (`id`)
@@ -93,12 +93,13 @@ DROP TABLE IF EXISTS `country`;
CREATE TABLE `country`
(
`id` INTEGER NOT NULL,
`id` INTEGER NOT NULL AUTO_INCREMENT,
`area_id` INTEGER,
`isocode` VARCHAR(4) NOT NULL,
`isoalpha2` VARCHAR(2),
`isoalpha3` VARCHAR(4),
`by_default` TINYINT,
`by_default` TINYINT DEFAULT 0,
`shop_country` TINYINT(1) DEFAULT 0 NOT NULL,
`created_at` DATETIME,
`updated_at` DATETIME,
PRIMARY KEY (`id`),
@@ -365,11 +366,12 @@ CREATE TABLE `product_sale_elements`
`newness` TINYINT DEFAULT 0,
`weight` FLOAT DEFAULT 0,
`is_default` TINYINT(1) DEFAULT 0,
`ean_code` VARCHAR(255),
`created_at` DATETIME,
`updated_at` DATETIME,
PRIMARY KEY (`id`),
UNIQUE INDEX `ref_UNIQUE` (`ref`),
INDEX `idx_product_sale_element_product_id` (`product_id`),
INDEX `ref` (`ref`),
CONSTRAINT `fk_product_sale_element_product_id`
FOREIGN KEY (`product_id`)
REFERENCES `product` (`id`)
@@ -436,7 +438,7 @@ CREATE TABLE `customer`
`title_id` INTEGER NOT NULL,
`firstname` VARCHAR(255) NOT NULL,
`lastname` VARCHAR(255) NOT NULL,
`email` VARCHAR(50),
`email` VARCHAR(255),
`password` VARCHAR(255),
`algo` VARCHAR(128),
`reseller` TINYINT,
@@ -775,6 +777,7 @@ CREATE TABLE `order_product`
`was_new` TINYINT NOT NULL,
`was_in_promo` TINYINT NOT NULL,
`weight` VARCHAR(45),
`ean_code` VARCHAR(255),
`tax_rule_title` VARCHAR(255),
`tax_rule_description` LONGTEXT,
`parent` INTEGER COMMENT 'not managed yet',
@@ -929,12 +932,12 @@ CREATE TABLE `area_delivery_module`
) ENGINE=InnoDB;
-- ---------------------------------------------------------------------
-- group
-- profile
-- ---------------------------------------------------------------------
DROP TABLE IF EXISTS `group`;
DROP TABLE IF EXISTS `profile`;
CREATE TABLE `group`
CREATE TABLE `profile`
(
`id` INTEGER NOT NULL AUTO_INCREMENT,
`code` VARCHAR(30) NOT NULL,
@@ -953,7 +956,7 @@ DROP TABLE IF EXISTS `resource`;
CREATE TABLE `resource`
(
`id` INTEGER NOT NULL AUTO_INCREMENT,
`code` VARCHAR(30) NOT NULL,
`code` VARCHAR(255) NOT NULL,
`created_at` DATETIME,
`updated_at` DATETIME,
PRIMARY KEY (`id`),
@@ -969,6 +972,7 @@ DROP TABLE IF EXISTS `admin`;
CREATE TABLE `admin`
(
`id` INTEGER NOT NULL AUTO_INCREMENT,
`profile_id` INTEGER,
`firstname` VARCHAR(100) NOT NULL,
`lastname` VARCHAR(100) NOT NULL,
`login` VARCHAR(100) NOT NULL,
@@ -979,61 +983,37 @@ CREATE TABLE `admin`
`remember_me_serial` VARCHAR(255),
`created_at` DATETIME,
`updated_at` DATETIME,
PRIMARY KEY (`id`)
PRIMARY KEY (`id`),
INDEX `idx_admin_profile_id` (`profile_id`),
CONSTRAINT `fk_admin_profile_id`
FOREIGN KEY (`profile_id`)
REFERENCES `profile` (`id`)
ON UPDATE RESTRICT
ON DELETE RESTRICT
) ENGINE=InnoDB;
-- ---------------------------------------------------------------------
-- admin_group
-- profile_resource
-- ---------------------------------------------------------------------
DROP TABLE IF EXISTS `admin_group`;
DROP TABLE IF EXISTS `profile_resource`;
CREATE TABLE `admin_group`
CREATE TABLE `profile_resource`
(
`id` INTEGER NOT NULL AUTO_INCREMENT,
`group_id` INTEGER NOT NULL,
`admin_id` INTEGER NOT NULL,
`created_at` DATETIME,
`updated_at` DATETIME,
PRIMARY KEY (`id`,`group_id`,`admin_id`),
INDEX `idx_admin_group_group_id` (`group_id`),
INDEX `idx_admin_group_admin_id` (`admin_id`),
CONSTRAINT `fk_admin_group_group_id`
FOREIGN KEY (`group_id`)
REFERENCES `group` (`id`)
ON UPDATE RESTRICT
ON DELETE CASCADE,
CONSTRAINT `fk_admin_group_admin_id`
FOREIGN KEY (`admin_id`)
REFERENCES `admin` (`id`)
ON UPDATE RESTRICT
ON DELETE CASCADE
) ENGINE=InnoDB;
-- ---------------------------------------------------------------------
-- group_resource
-- ---------------------------------------------------------------------
DROP TABLE IF EXISTS `group_resource`;
CREATE TABLE `group_resource`
(
`id` INTEGER NOT NULL AUTO_INCREMENT,
`group_id` INTEGER NOT NULL,
`profile_id` INTEGER NOT NULL,
`resource_id` INTEGER NOT NULL,
`read` TINYINT DEFAULT 0,
`write` TINYINT DEFAULT 0,
`access` INTEGER DEFAULT 0 NOT NULL,
`created_at` DATETIME,
`updated_at` DATETIME,
PRIMARY KEY (`id`,`group_id`,`resource_id`),
INDEX `id_group_resource_group_id` (`group_id`),
INDEX `idx_group_resource_resource_id` (`resource_id`),
CONSTRAINT `fk_group_resource_group_id`
FOREIGN KEY (`group_id`)
REFERENCES `group` (`id`)
PRIMARY KEY (`profile_id`,`resource_id`),
INDEX `idx_profile_resource_profile_id` (`profile_id`),
INDEX `idx_profile_resource_resource_id` (`resource_id`),
CONSTRAINT `fk_profile_resource_profile_id`
FOREIGN KEY (`profile_id`)
REFERENCES `profile` (`id`)
ON UPDATE RESTRICT
ON DELETE CASCADE,
CONSTRAINT `fk_group_resource_resource_id`
CONSTRAINT `fk_profile_resource_resource_id`
FOREIGN KEY (`resource_id`)
REFERENCES `resource` (`id`)
ON UPDATE RESTRICT
@@ -1041,28 +1021,27 @@ CREATE TABLE `group_resource`
) ENGINE=InnoDB;
-- ---------------------------------------------------------------------
-- group_module
-- profile_module
-- ---------------------------------------------------------------------
DROP TABLE IF EXISTS `group_module`;
DROP TABLE IF EXISTS `profile_module`;
CREATE TABLE `group_module`
CREATE TABLE `profile_module`
(
`id` INTEGER NOT NULL AUTO_INCREMENT,
`group_id` INTEGER NOT NULL,
`module_id` INTEGER,
`profile_id` INTEGER NOT NULL,
`module_id` INTEGER NOT NULL,
`access` TINYINT DEFAULT 0,
`created_at` DATETIME,
`updated_at` DATETIME,
PRIMARY KEY (`id`),
INDEX `idx_group_module_group_id` (`group_id`),
INDEX `idx_group_module_module_id` (`module_id`),
CONSTRAINT `fk_group_module_group_id`
FOREIGN KEY (`group_id`)
REFERENCES `group` (`id`)
PRIMARY KEY (`profile_id`,`module_id`),
INDEX `idx_profile_module_profile_id` (`profile_id`),
INDEX `idx_profile_module_module_id` (`module_id`),
CONSTRAINT `fk_profile_module_profile_id`
FOREIGN KEY (`profile_id`)
REFERENCES `profile` (`id`)
ON UPDATE CASCADE
ON DELETE CASCADE,
CONSTRAINT `fk_group_module_module_id`
CONSTRAINT `fk_profile_module_module_id`
FOREIGN KEY (`module_id`)
REFERENCES `module` (`id`)
ON UPDATE RESTRICT
@@ -1279,6 +1258,7 @@ CREATE TABLE `product_price`
`currency_id` INTEGER NOT NULL,
`price` FLOAT NOT NULL,
`promo_price` FLOAT,
`from_default_currency` TINYINT(1) DEFAULT 0 NOT NULL,
`created_at` DATETIME,
`updated_at` DATETIME,
PRIMARY KEY (`product_sale_elements_id`,`currency_id`),
@@ -1601,6 +1581,21 @@ CREATE TABLE `order_product_tax`
ON DELETE CASCADE
) ENGINE=InnoDB;
-- ---------------------------------------------------------------------
-- newsletter
-- ---------------------------------------------------------------------
DROP TABLE IF EXISTS `newsletter`;
CREATE TABLE `newsletter`
(
`id` INTEGER NOT NULL AUTO_INCREMENT,
`email` VARCHAR(255) NOT NULL,
`firstname` VARCHAR(255),
`lastname` VARCHAR(255),
PRIMARY KEY (`id`)
) ENGINE=InnoDB;
-- ---------------------------------------------------------------------
-- category_i18n
-- ---------------------------------------------------------------------
@@ -1971,12 +1966,12 @@ CREATE TABLE `module_i18n`
) ENGINE=InnoDB;
-- ---------------------------------------------------------------------
-- group_i18n
-- profile_i18n
-- ---------------------------------------------------------------------
DROP TABLE IF EXISTS `group_i18n`;
DROP TABLE IF EXISTS `profile_i18n`;
CREATE TABLE `group_i18n`
CREATE TABLE `profile_i18n`
(
`id` INTEGER NOT NULL,
`locale` VARCHAR(5) DEFAULT 'en_US' NOT NULL,
@@ -1985,9 +1980,9 @@ CREATE TABLE `group_i18n`
`chapo` TEXT,
`postscriptum` TEXT,
PRIMARY KEY (`id`,`locale`),
CONSTRAINT `group_i18n_FK_1`
CONSTRAINT `profile_i18n_FK_1`
FOREIGN KEY (`id`)
REFERENCES `group` (`id`)
REFERENCES `profile` (`id`)
ON DELETE CASCADE
) ENGINE=InnoDB;