[SLQ] evolution db dans osCSS

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 : , , , , , , , , ,

Les commentaires sont fermés.