[+] CORE : Accounting, Add a begin of the Accounting plan detail

This commit is contained in:
vSchoener
2012-02-29 15:28:07 +00:00
parent 78c0ad182a
commit 1e88952721
16 changed files with 312 additions and 57 deletions
+6 -2
View File
@@ -345,7 +345,7 @@ form#product_form h4 { font-size:18px; font-weight:normal;}
#statsContainer #calendar p, #referrersContainer #calendar p { margin:2px;}
#statsContainer #calendar p span, #referrersContainer #calendar p span { float:left; display:block; padding:3px;}
#statsContainer .blocStats { background-color: #EBEDF4;border: 1px solid #C2C4D9; display: block; position:relative; padding: 10px;}
#statsContainer .blocStats h2 { font-weight:normal; margin:0;}
#statsContainer .blocStats h2 { font-weight:normal; margin:0; font-size:1.4em}
#statsContainer .blocStats h2.icon-statsproduct span,
#statsContainer .blocStats h2.icon-statsbestsuppliers span,
#statsContainer .blocStats h2.icon-statsforecast span,
@@ -493,4 +493,8 @@ ul.listForm li {padding-bottom:3px;}
.selected-line {background:#fff1b5;}
#changedFiles ul{list-style-type: square; padding-left: 40px;}
#changedFiles ul{list-style-type: square; padding-left: 40px;}
#account_list { background-color: #EBEDF4;border: 1px solid #C2C4D9; display: block; position:relative; padding: 10px;}
#account_list h2 { font-weight:normal; margin:0; font-size: 1.4em; padding-bottom:10px;}
#account_list table td, table th {width:100px;}
@@ -31,7 +31,9 @@
{include file="toolbar.tpl" toolbar_btn=$toolbar_btn}
<div class="pageTitle">
<h3>
<span id="current_obj" style="font-weight: normal;">{$title|default:'&nbsp;'}</span>
<span id="current_obj" style="font-weight: normal;">
{$title|default:'&nbsp;'}
</span>
</h3>
</div>
</div>
@@ -0,0 +1,65 @@
{*
* 2007-2012 PrestaShop
*
* NOTICE OF LICENSE
*
* This source file is subject to the Academic Free License (AFL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/afl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2012 PrestaShop SA
* @version Release: $Revision: 9856 $
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
* International Registered Trademark & Property of PrestaShop SA
*}
<div class="toolbarBox">
{include file="toolbar.tpl" toolbar_btn=$toolbar_btn}
<div class="pageTitle">
<h3>
<span id="current_obj" style="font-weight: normal;">
{$title|default:'&nbsp;'}
</span>
</h3>
</div>
</div>
<div id="account_list">
{foreach from=$account_number_list item=detail key=name}
<h2>{$detail['title']}</h2>
{if $detail['list']|count}
<table class="table" style="width:100%;">
<thead>
{if $detail['list']|count}
{foreach from=$detail['fields'] item=col_name key=sql_name}
<th>{$col_name}</th>
{/foreach}
{/if}
</thead>
<tbody>
{foreach from=$detail['list'] item=row key=row_number}
<tr>
{foreach from=$row item=value key=value_num}
<td>{$value}</td>
{/foreach}
</tr>
{/foreach}
</tbody>
</table>
{else}
<p>{l s='No defined account number for this list'}</p>
{/if}
<div class="separation"></div>
{/foreach}
</div>
+4 -1
View File
@@ -133,6 +133,8 @@ class CustomerCore extends ObjectModel
public $groupBox;
public $account_number;
protected $webserviceParameters = array(
'fields' => array(
'id_default_group' => array('xlink_resource' => 'groups'),
@@ -169,6 +171,7 @@ class CustomerCore extends ObjectModel
'optin' => array('type' => self::TYPE_BOOL, 'validate' => 'isBool'),
'website' => array('type' => self::TYPE_STRING, 'validate' => 'isUrl'),
'company' => array('type' => self::TYPE_STRING, 'validate' => 'isGenericName'),
'account_number' => array('type' => self::TYPE_STRING, 'validate' => 'isCleanHtml', 'size' => 65000, 'copy_from_front' => false),
'siret' => array('type' => self::TYPE_STRING, 'validate' => 'isSiret'),
'ape' => array('type' => self::TYPE_STRING, 'validate' => 'isApe'),
'outstanding_allow_amount' => array('type' => self::TYPE_INT, 'validate' => 'isFloat', 'copy_post' => false),
@@ -756,4 +759,4 @@ class CustomerCore extends ObjectModel
$this->addGroups($groups);
return true;
}
}
}
@@ -73,9 +73,9 @@ class AdminAccountingManagementControllerCore extends AdminController
'title' => $this->l('Accounting Management'),
'table' => 'accounting'
));
parent::initContent();
parent::initContent();
}
/**
* AdminController::init() override
* @see AdminController::postProcess()
@@ -135,4 +135,4 @@ class AdminAccountingManagementControllerCore extends AdminController
}
}
}
}
@@ -0,0 +1,156 @@
<?php
/*
* 2007-2012 PrestaShop
*
* NOTICE OF LICENSE
ing*
* This source file is subject to the Open Software License (OSL 3.0)
* that is bundled with this package in the file LICENSE.txt.
* It is also available through the world-wide-web at this URL:
* http://opensource.org/licenses/osl-3.0.php
* If you did not receive a copy of the license and are unable to
* obtain it through the world-wide-web, please send an email
* to license@prestashop.com so we can send you a copy immediately.
*
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
* @author PrestaShop SA <contact@prestashop.com>
* @copyright 2007-2012 PrestaShop SA
* @version Release: $Revision: 9841 $
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
* International Registered Trademark & Property of PrestaShop SA
*/
class AdminAccountingRegisteredNumberControllerCore extends AdminController
{
public $account_number_list = array();
public function __construct()
{
parent::__construct();
$this->className = 'Accounting';
$id_lang = $this->context->language->id;
// p. => main table, s. => join table
// Contains rules to build sql query
$this->account_number_list = array(
// Product definition
'product' => array(
'table' => 'accounting_product_zone_shop',
'fields' => array(
'p.account_number' => $this->l('Account number'),
'COUNT(*) AS total' => $this->l('Number of product associated to this account')
),
'group_by' => 'account_number',
'condition' => 'p.account_number <> ""',
'title' => $this->l('Product account number list'),
'list' => array()),
// Taxes definition
'taxes' => array(
'table' => 'tax',
'fields' => array(
'account_number' => $this->l('Account number'),
'COUNT(*) AS total' => $this->l('Number of taxes associated to this account')
),
'group_by' => 'account_number',
'condition' => 'account_number <> ""',
'title' => $this->l('Taxes Account number list'),
'list' => array()),
// Gift wrapping definition, for now Only one available using Configuration
'gift_wrapping' => array(
'table' => '',
'fields' => array(
'account_number' => $this->l('Account number'),
'total' => $this->l('Number of gift-wrapping associated to this account')
),
'condition' => 'account_number <> ""',
'group_by' => 'account_number',
'title' => $this->l('Gift wrapping account number list'),
'list' => array()),
// Customer definition
'customer' => array(
'table' => 'customer',
'fields' => array(
'account_number' => $this->l('Account number'),
'firstname' => $this->l('First name'),
'lastname' => $this->l('Last name')
),
'group_by' => 'account_number',
'condition' => 'account_number <> ""',
'title' => $this->l('Customer account number list'),
'list' => array()),
// Zone shop definition
'zone_shop' => array(
'table' => 'accounting_zone_shop',
'fields' => array(
'p.account_number' => $this->l('Account number'),
'COUNT(*) AS total' => $this->l('Number of zone associated to this account')
),
'group_by' => 'account_number',
'condition' => 'account_number <> ""',
'title' => $this->l('Zone shop account number list'),
'list' => array())
);
}
public function initToolbar()
{
$this->initToolbarTitle();
$this->toolbar_btn = array();
}
public function initContent()
{
$this->initToolbar();
$this->initAccountNumberList();
}
public function initAccountNumberList()
{
foreach ($this->account_number_list as $name => &$detail)
{
if (isset($detail['table']) && !empty($detail['table']))
{
$join = '';
if (isset($detail['left_join']))
{
$join = 'LEFT JOIN '._DB_PREFIX_.$detail['left_join']['table'].' s ON (';
foreach ($detail['left_join']['on'] as $on)
$join .= 'p.'.$on.' = s.'.$on.' AND ';
$join = rtrim($join, ' AND ').')';
}
$query = 'SELECT '.implode(', ', array_keys($detail['fields'])).'
FROM `'._DB_PREFIX_.$detail['table'].'` p '.$join.'
WHERE '.$detail['condition'];
if (isset($detail['group_by']))
$query .= ' GROUP BY '.$detail['group_by'];
$detail['list'] = Db::getInstance()->executeS($query);
}
}
$num = Configuration::get('PS_GIFT_WRAPPING_ACCOUNT_NUMBER');
if (!empty($num))
$this->account_number_list['gift_wrapping']['list'][] = array($num, '1');
$this->context->smarty->assign(array(
'toolbar_btn' => $this->toolbar_btn,
'title' => $this->l('Accounting Plan'),
'account_number_list' => $this->account_number_list));
parent::initContent();
}
}
@@ -290,6 +290,14 @@ class AdminCustomersControllerCore extends AdminController
'required' => ($obj->id ? false : true),
'desc' => ($obj->id ? $this->l('Leave blank if no change') : $this->l('5 characters min., only letters, numbers, or').' -_')
),
array(
'type' => 'text',
'label' => $this->l('Accounting number:'),
'name' => 'account_number',
'size' => 33,
'required' => false,
'desc' => $this->l('Used for the accounting export')
),
array(
'type' => 'birthday',
'label' => $this->l('Birthday:'),
@@ -249,6 +249,14 @@ class AdminPreferencesControllerCore extends AdminController
'list' => $taxes,
'identifier' => 'id'
),
'PS_GIFT_WRAPPING_ACCOUNT_NUMBER' => array(
'title' => $this->l('Gift-wrapping account number'),
'desc' => $this->l('Set an account number for your gift-wrapping (used for accounting)'),
'validation' => 'isString',
'type' => 'text',
'size' => 30,
),
'PS_ATTACHMENT_MAXIMUM_SIZE' => array(
'title' => $this->l('Attachment maximum size'),
'desc' => $this->l('Set the maximum size of attachment files (in MegaBytes).').' '.$this->l('Maximum:').' '.
+1
View File
@@ -542,6 +542,7 @@ CREATE TABLE `PREFIX_customer` (
`passwd` varchar(32) NOT NULL,
`last_passwd_gen` timestamp NOT NULL default CURRENT_TIMESTAMP,
`birthday` date default NULL,
`account_number` varchar(128) NOT NULL,
`newsletter` tinyint(1) unsigned NOT NULL default '0',
`ip_registration_newsletter` varchar(15) default NULL,
`newsletter_date_add` datetime default NULL,
+19 -16
View File
@@ -9,7 +9,7 @@
<tab id="Home" id_parent="-1" active="1">
<class_name>AdminHome</class_name>
</tab>
<tab id="tab_107" id_parent="-1" active="1">
<tab id="tab_2" id_parent="-1" active="1">
<class_name>AdminLogin</class_name>
</tab>
<tab id="CMS_pages" id_parent="-1" active="1">
@@ -177,6 +177,21 @@
<tab id="Positions" id_parent="Modules" active="1">
<class_name>AdminModulesPositions</class_name>
</tab>
<tab id="Profiles" id_parent="Employees" active="1">
<class_name>AdminProfiles</class_name>
</tab>
<tab id="Permissions" id_parent="Employees" active="1">
<class_name>AdminAccess</class_name>
</tab>
<tab id="Contacts" id_parent="Employees" active="1">
<class_name>AdminContacts</class_name>
</tab>
<tab id="Tabs" id_parent="Employees" active="1">
<class_name>AdminTabs</class_name>
</tab>
<tab id="Customer_Service" id_parent="Employees" active="1">
<class_name>AdminCustomerThreads</class_name>
</tab>
<tab id="Contact_Information" id_parent="Preferences" active="1">
<class_name>AdminContact</class_name>
</tab>
@@ -252,21 +267,6 @@
<tab id="SQL_Manager" id_parent="Tools" active="1">
<class_name>AdminRequestSql</class_name>
</tab>
<tab id="Profiles" id_parent="Employees" active="1">
<class_name>AdminProfiles</class_name>
</tab>
<tab id="Permissions" id_parent="Employees" active="1">
<class_name>AdminAccess</class_name>
</tab>
<tab id="Contacts" id_parent="Employees" active="1">
<class_name>AdminContacts</class_name>
</tab>
<tab id="Tabs" id_parent="Employees" active="1">
<class_name>AdminTabs</class_name>
</tab>
<tab id="Customer_Service" id_parent="Employees" active="1">
<class_name>AdminCustomerThreads</class_name>
</tab>
<tab id="Group_Shops" id_parent="Shops" active="1">
<class_name>AdminGroupShop</class_name>
</tab>
@@ -300,5 +300,8 @@
<tab id="Export" id_parent="Accounting" active="1">
<class_name>AdminAccountingExport</class_name>
</tab>
<tab id="Display_Accounting_Plan" id_parent="Accounting" active="1">
<class_name>AdminAccountingRegisteredNumber</class_name>
</tab>
</entities>
</entity_tab>
+7 -6
View File
@@ -1,7 +1,7 @@
<?xml version="1.0"?>
<entity_tab>
<tab id="Home" name="Home"/>
<tab id="tab_107" name=""/>
<tab id="tab_2" name=""/>
<tab id="CMS_pages" name="CMS pages"/>
<tab id="CMS_categories" name="CMS categories"/>
<tab id="Combinations_generator" name="Combinations generator"/>
@@ -57,6 +57,11 @@
<tab id="My_Account" name="Mein Konto"/>
<tab id="Themes" name="Themen"/>
<tab id="Positions" name="Positionen"/>
<tab id="Profiles" name="Profile"/>
<tab id="Permissions" name="Berechtigungen"/>
<tab id="Contacts" name="Kontakte"/>
<tab id="Tabs" name="Tabs"/>
<tab id="Customer_Service" name="Kundenservice"/>
<tab id="Contact_Information" name="Kontaktinformation"/>
<tab id="Themes_1" name="Themen"/>
<tab id="SEO_URLs" name="SEO &amp; URLs"/>
@@ -82,11 +87,6 @@
<tab id="Webservice" name="Webservice"/>
<tab id="Logs" name="Log"/>
<tab id="SQL_Manager" name="SQL Manager"/>
<tab id="Profiles" name="Profile"/>
<tab id="Permissions" name="Berechtigungen"/>
<tab id="Contacts" name="Kontakte"/>
<tab id="Tabs" name="Tabs"/>
<tab id="Customer_Service" name="Kundenservice"/>
<tab id="Group_Shops" name="Group Shops"/>
<tab id="Shop_Urls" name="Shop Urls"/>
<tab id="Warehouses" name="Warehouses"/>
@@ -98,4 +98,5 @@
<tab id="Configuration" name="Configuration"/>
<tab id="Account_Number_Management" name="Account Number Management"/>
<tab id="Export" name="Export"/>
<tab id="Display_Accounting_Plan" name="Display Accounting Plan"/>
</entity_tab>
+7 -6
View File
@@ -1,7 +1,7 @@
<?xml version="1.0"?>
<entity_tab>
<tab id="Home" name="Home"/>
<tab id="tab_107" name=""/>
<tab id="tab_2" name=""/>
<tab id="CMS_pages" name="CMS pages"/>
<tab id="CMS_categories" name="CMS categories"/>
<tab id="Combinations_generator" name="Combinations generator"/>
@@ -57,6 +57,11 @@
<tab id="My_Account" name="My Account"/>
<tab id="Themes" name="Themes"/>
<tab id="Positions" name="Positions"/>
<tab id="Profiles" name="Profiles"/>
<tab id="Permissions" name="Permissions"/>
<tab id="Contacts" name="Contacts"/>
<tab id="Tabs" name="Tabs"/>
<tab id="Customer_Service" name="Customer Service"/>
<tab id="Contact_Information" name="Contact Information"/>
<tab id="Themes_1" name="Themes"/>
<tab id="SEO_URLs" name="SEO &amp; URLs"/>
@@ -82,11 +87,6 @@
<tab id="Webservice" name="Webservice"/>
<tab id="Logs" name="Logs"/>
<tab id="SQL_Manager" name="SQL Manager"/>
<tab id="Profiles" name="Profiles"/>
<tab id="Permissions" name="Permissions"/>
<tab id="Contacts" name="Contacts"/>
<tab id="Tabs" name="Tabs"/>
<tab id="Customer_Service" name="Customer Service"/>
<tab id="Group_Shops" name="Group Shops"/>
<tab id="Shop_Urls" name="Shop Urls"/>
<tab id="Warehouses" name="Warehouses"/>
@@ -98,4 +98,5 @@
<tab id="Configuration" name="Configuration"/>
<tab id="Account_Number_Management" name="Account Number Management"/>
<tab id="Export" name="Export"/>
<tab id="Display_Accounting_Plan" name="Display Accounting Plan"/>
</entity_tab>
+7 -6
View File
@@ -1,7 +1,7 @@
<?xml version="1.0"?>
<entity_tab>
<tab id="Home" name="Home"/>
<tab id="tab_107" name=""/>
<tab id="tab_2" name=""/>
<tab id="CMS_pages" name="CMS pages"/>
<tab id="CMS_categories" name="CMS categories"/>
<tab id="Combinations_generator" name="Combinations generator"/>
@@ -57,6 +57,11 @@
<tab id="My_Account" name="My Account"/>
<tab id="Themes" name="Temas"/>
<tab id="Positions" name="Posiciones"/>
<tab id="Profiles" name="Perfiles"/>
<tab id="Permissions" name="Permisos"/>
<tab id="Contacts" name="Contactos"/>
<tab id="Tabs" name="Pesta&#xF1;as"/>
<tab id="Customer_Service" name="Servicio al cliente"/>
<tab id="Contact_Information" name="Datos"/>
<tab id="Themes_1" name="Temas"/>
<tab id="SEO_URLs" name="SEO &amp; URLs"/>
@@ -82,11 +87,6 @@
<tab id="Webservice" name="Web service"/>
<tab id="Logs" name="Log"/>
<tab id="SQL_Manager" name="SQL Manager"/>
<tab id="Profiles" name="Perfiles"/>
<tab id="Permissions" name="Permisos"/>
<tab id="Contacts" name="Contactos"/>
<tab id="Tabs" name="Pesta&#xF1;as"/>
<tab id="Customer_Service" name="Servicio al cliente"/>
<tab id="Group_Shops" name="Group Shops"/>
<tab id="Shop_Urls" name="Shop Urls"/>
<tab id="Warehouses" name="Warehouses"/>
@@ -98,4 +98,5 @@
<tab id="Configuration" name="Configuration"/>
<tab id="Account_Number_Management" name="Account Number Management"/>
<tab id="Export" name="Export"/>
<tab id="Display_Accounting_Plan" name="Display Accounting Plan"/>
</entity_tab>
+7 -6
View File
@@ -1,7 +1,7 @@
<?xml version="1.0"?>
<entity_tab>
<tab id="Home" name="Accueil"/>
<tab id="tab_107" name=""/>
<tab id="tab_2" name=""/>
<tab id="CMS_pages" name="Pages CMS"/>
<tab id="CMS_categories" name="Cat&#xE9;gories CMS"/>
<tab id="Combinations_generator" name="G&#xE9;n&#xE9;rateur de d&#xE9;clinaisons"/>
@@ -57,6 +57,11 @@
<tab id="My_Account" name="Mon compte"/>
<tab id="Themes" name="Th&#xE8;mes"/>
<tab id="Positions" name="Positions"/>
<tab id="Profiles" name="Profils"/>
<tab id="Permissions" name="Permissions"/>
<tab id="Contacts" name="Contacts"/>
<tab id="Tabs" name="Onglets"/>
<tab id="Customer_Service" name="SAV"/>
<tab id="Contact_Information" name="Coordonn&#xE9;es"/>
<tab id="Themes_1" name="Th&#xE8;mes"/>
<tab id="SEO_URLs" name="SEO &amp; URLs"/>
@@ -82,11 +87,6 @@
<tab id="Webservice" name="Service web"/>
<tab id="Logs" name="Log"/>
<tab id="SQL_Manager" name="SQL Manager"/>
<tab id="Profiles" name="Profils"/>
<tab id="Permissions" name="Permissions"/>
<tab id="Contacts" name="Contacts"/>
<tab id="Tabs" name="Onglets"/>
<tab id="Customer_Service" name="SAV"/>
<tab id="Group_Shops" name="Groupes de boutique"/>
<tab id="Shop_Urls" name="URLs de boutique"/>
<tab id="Warehouses" name="Entrep&#xF4;ts"/>
@@ -98,4 +98,5 @@
<tab id="Configuration" name="Configuration"/>
<tab id="Account_Number_Management" name="Gestion des num&#xE9;ros de comptes"/>
<tab id="Export" name="Export"/>
<tab id="Display_Accounting_Plan" name="Display Accounting Plan"/>
</entity_tab>
+7 -6
View File
@@ -1,7 +1,7 @@
<?xml version="1.0"?>
<entity_tab>
<tab id="Home" name="Home"/>
<tab id="tab_107" name=""/>
<tab id="tab_2" name=""/>
<tab id="CMS_pages" name="CMS pages"/>
<tab id="CMS_categories" name="CMS categories"/>
<tab id="Combinations_generator" name="Combinations generator"/>
@@ -57,6 +57,11 @@
<tab id="My_Account" name="Il mio Account"/>
<tab id="Themes" name="Temi"/>
<tab id="Positions" name="Posizioni"/>
<tab id="Profiles" name="Profili"/>
<tab id="Permissions" name="Permessi"/>
<tab id="Contacts" name="Contatti"/>
<tab id="Tabs" name="Tab"/>
<tab id="Customer_Service" name="Servizio clienti"/>
<tab id="Contact_Information" name="Informazioni di contatto"/>
<tab id="Themes_1" name="Temi"/>
<tab id="SEO_URLs" name="SEO &amp; URLs"/>
@@ -82,11 +87,6 @@
<tab id="Webservice" name="Webservice"/>
<tab id="Logs" name="Log"/>
<tab id="SQL_Manager" name="SQL Manager"/>
<tab id="Profiles" name="Profili"/>
<tab id="Permissions" name="Permessi"/>
<tab id="Contacts" name="Contatti"/>
<tab id="Tabs" name="Tab"/>
<tab id="Customer_Service" name="Servizio clienti"/>
<tab id="Group_Shops" name="Group Shops"/>
<tab id="Shop_Urls" name="Shop Urls"/>
<tab id="Warehouses" name="Warehouses"/>
@@ -98,4 +98,5 @@
<tab id="Configuration" name="Configuration"/>
<tab id="Account_Number_Management" name="Account Number Management"/>
<tab id="Export" name="Export"/>
<tab id="Display_Accounting_Plan" name="Display Accounting Plan"/>
</entity_tab>
+4 -4
View File
@@ -8,6 +8,8 @@ UPDATE `PREFIX_product` set is_virtual = 1 WHERE id_product IN (SELECT id_produc
ALTER TABLE `PREFIX_employee` ADD `bo_width` int(10) unsigned NOT NULL DEFAULT 0 AFTER `bo_theme`;
CREATE TABLE `PREFIX_product_tax_rules_group_shop` (
`id_product` INT(11) UNSIGNED NOT NULL,
`id_tax_rules_group` INT(11) UNSIGNED NOT NULL,
@@ -30,8 +32,6 @@ INSERT INTO `PREFIX_carrier_tax_rules_group_shop` (`id_carrier`, `id_tax_rules_g
(SELECT `id_carrier`, `id_tax_rules_group`, `id_shop` FROM `PREFIX_carrier`, `PREFIX_shop`);
ALTER TABLE `PREFIX_carrier` DROP `id_tax_rules_group`;
ALTER TABLE `PREFIX_specific_price` DROP INDEX `id_product`;
KEY (`id_product`, `id_shop`, `id_currency`, `id_country`, `id_group`, `id_customer`, `from_quantity`, `from`, `to`),
ALTER TABLE `PREFIX_customer` ADD `account_number` VARCHAR(128) NOT NULL AFTER `birthday`
ALTER TABLE `PREFIX_specific_price` ADD UNIQUE (`id_product`,`id_shop`,`id_group_shop`,`id_currency`,`id_country`,`id_group`,`id_customer`,`id_product_attribute`,`from_quantity`,`from`,`to`);
ALTER TABLE `PREFIX_specific_price` ADD INDEX (`id_cart`);
ALTER TABLE `PREFIX_product_shop` ADD `id_category_default` INT( 11 ) UNSIGNED DEFAULT NULL;