Afin d’economiser et simplifier la db , dans osCSS 2, et la nécessite des « status » supplémentaire, l’idée de devoir créer une table spécifique à chaque type de status (order, return, return reason, etc.. ), le choix d’une table unique à été choisi . Une vue pour chaque ancienne table et creer du coté public .
Pour le backoffice, un module de configuration prennant en charge la gestion complete de tous les status, et la possibilité d’en ajouter d’autre type simplement.
Update SQL
Valable pour les version osCSS 2.0.9g < osCSS 2.1.0
La nouvelle table de status
drop table if exists osc_status;
CREATE TABLE osc_status (
status_id int(11) NOT NULL default ‘0’,
status_type varchar(20) NOT NULL default ‘orders’,
language_id int(11) NOT NULL default ‘1’,
status_name varchar(32) NOT NULL,
status_color varchar(8) NOT NULL,
PRIMARY KEY (status_id,status_type,language_id),
KEY idx_status_name (status_name)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
Pour le remplacement des status de la table orders_status
INSERT INTO osc_status VALUES (1, ‘orders’, 1, ‘En attente’, ‘#FF1A00’);
INSERT INTO osc_status VALUES (2, ‘orders’, 1, ‘Traitement en cours’, ‘#3393D9’);
INSERT INTO osc_status VALUES (3, ‘orders’, 1, ‘Livre’, ‘#66FF00’);
INSERT INTO osc_status VALUES (4, ‘orders’, 1, ‘Annule’, ‘#666’);
Le creation de la vue public, avec conversion des nom de colonne
drop view if exists view_orders_status;
CREATE VIEW view_orders_status AS
SELECT status_id as orders_status_id, language_id , status_name as orders_status_name, status_color as orders_status_color FROM osc_status WHERE status_type = ‘orders’ LIMIT 0 , 30
Tags : langue, module, mysql, orders status, oscss, oscss2, sql, status, update, view