maintaince module
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
INSERT IGNORE INTO inv_categories (name, code, color, requires_line, sort_order) VALUES
|
||||
('Linea di produzione', 'line', '#dc2626', 1, 10),
|
||||
('Attrezzature', 'equipment', '#0d6efd', 0, 20),
|
||||
('Accessori', 'accessories', '#20c997', 0, 30),
|
||||
('Qualità', 'quality', '#6f42c1', 0, 40);
|
||||
|
||||
UPDATE inv_equipment
|
||||
SET category_id = (SELECT id FROM inv_categories WHERE code = 'equipment')
|
||||
WHERE category_id IS NULL AND line_id IS NULL;
|
||||
|
||||
INSERT INTO inv_equipment (name, category_id, line_id, status, description, created_at, updated_at)
|
||||
SELECT
|
||||
pl.name,
|
||||
(SELECT id FROM inv_categories WHERE code = 'line'),
|
||||
pl.id,
|
||||
IF(pl.status = 'active', 'active', 'out_of_service'),
|
||||
CONCAT_WS(' ', NULLIF(pl.brand, ''), NULLIF(pl.model, '')),
|
||||
NOW(), NOW()
|
||||
FROM production_lines pl
|
||||
WHERE NOT EXISTS (
|
||||
SELECT 1 FROM inv_equipment e WHERE e.line_id = pl.id
|
||||
);
|
||||
|
||||
DELIMITER $$
|
||||
|
||||
DROP PROCEDURE IF EXISTS manutenzioni_migrate_step3 $$
|
||||
CREATE PROCEDURE manutenzioni_migrate_step3()
|
||||
BEGIN
|
||||
DECLARE v_db VARCHAR(64);
|
||||
SET v_db = DATABASE();
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM information_schema.table_constraints
|
||||
WHERE table_schema = v_db AND table_name = 'inv_equipment'
|
||||
AND constraint_name = 'fk_inv_equipment_category') THEN
|
||||
ALTER TABLE inv_equipment
|
||||
ADD CONSTRAINT fk_inv_equipment_category FOREIGN KEY (category_id)
|
||||
REFERENCES inv_categories (id) ON DELETE SET NULL;
|
||||
END IF;
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM information_schema.table_constraints
|
||||
WHERE table_schema = v_db AND table_name = 'inv_equipment'
|
||||
AND constraint_name = 'fk_inv_equipment_line') THEN
|
||||
ALTER TABLE inv_equipment
|
||||
ADD CONSTRAINT fk_inv_equipment_line FOREIGN KEY (line_id)
|
||||
REFERENCES production_lines (id) ON DELETE SET NULL;
|
||||
END IF;
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM information_schema.table_constraints
|
||||
WHERE table_schema = v_db AND table_name = 'inv_equipment'
|
||||
AND constraint_name = 'fk_inv_equipment_department') THEN
|
||||
ALTER TABLE inv_equipment
|
||||
ADD CONSTRAINT fk_inv_equipment_department FOREIGN KEY (department_id)
|
||||
REFERENCES departments (id) ON DELETE SET NULL;
|
||||
END IF;
|
||||
|
||||
IF NOT EXISTS (SELECT 1 FROM information_schema.table_constraints
|
||||
WHERE table_schema = v_db AND table_name = 'inv_equipment'
|
||||
AND constraint_name = 'fk_inv_equipment_cover') THEN
|
||||
ALTER TABLE inv_equipment
|
||||
ADD CONSTRAINT fk_inv_equipment_cover FOREIGN KEY (cover_file_id)
|
||||
REFERENCES inv_equipment_files (id) ON DELETE SET NULL;
|
||||
END IF;
|
||||
END $$
|
||||
|
||||
DELIMITER ;
|
||||
|
||||
CALL manutenzioni_migrate_step3();
|
||||
DROP PROCEDURE manutenzioni_migrate_step3;
|
||||
Reference in New Issue
Block a user