drop table if exists platos cascade constraints;
drop table if exists ingredientes cascade constraints;
drop table if exists ingredientes_platos cascade constraints;
drop table if exists clientes cascade constraints;
drop table if exists comandas cascade constraints;
create table platos (
    id int primary key,
    nombre varchar(100) not null,
    precio decimal(6,2),
    tiempo_preparacion int
);
create table ingredientes(
    id int primary key,
    nombre varchar(100) not null,
    categoria varchar(30) check(categoria in ('CARNE','PESCADO','CONDIMENTO','FRUTA','VERDURA','LACTEO','BEBIDA','LEGUMBRE','OTRO')),
    estado varchar(30) check( estado in ('SOLIDO','LIQUIDO'))
);
create table ingredientes_platos(
    id_ingrediente int,
    id_plato int,
    cantidad int
);
alter table ingredientes_platos
add foreign key (id_ingrediente) references ingredientes(id);
alter table ingredientes_platos
add foreign key (id_plato) references platos(id);
create table clientes(
    id int primary key,
    nombre varchar(100) not null,
    telefono varchar(10),
    localidad varchar(100) not null
);
create table comandas(
    id int primary key,
    mesa int,
    id_cliente int,
    id_plato int,
    estado varchar(30) check( estado in ('COCINA','SERVIDO','COBRADO','DEVUELTO')),
    fecha date,
    hora char(5)
);
alter table comandas
add foreign key (id_cliente) references clientes(id);
alter table comandas
add foreign key (id_plato) references platos(id);

insert into platos values (1,'Plato Arroz caldoso',12.50,25);
insert into platos values (2,'Plato Calamares con patatas',7.50,15);
insert into platos values (3,'Entrante bacalao en aceite',4.50,10);
insert into platos values (4,'Entrante Crema de zanahorias',3,10);
insert into platos values (5,'Tarta de queso',5.50,10);

insert into ingredientes values (1,'Ajo','VERDURA','SOLIDO');
insert into ingredientes values (2,'Aceite de oliva virgen extra','CONDIMENTO','LIQUIDO');
insert into ingredientes values (3,'Cebolla','VERDURA','SOLIDO');
insert into ingredientes values (4,'Calamar','PESCADO','SOLIDO');
insert into ingredientes values (5,'Patata','VERDURA','SOLIDO');
insert into ingredientes values (6,'Pimiento','VERDURA','SOLIDO');
insert into ingredientes values (7,'Vino blanco','BEBIDA','LIQUIDO');
insert into ingredientes values (8,'Sal','CONDIMENTO','SOLIDO');
insert into ingredientes values (9,'Pimienta','CONDIMENTO','SOLIDO');
insert into ingredientes values (10,'Costilla de cerdo','CARNE','SOLIDO');
insert into ingredientes values (11,'Guisante','VERDURA','SOLIDO');
insert into ingredientes values (12,'Tomate','VERDURA','SOLIDO');
insert into ingredientes values (13,'Pimenton dulce','CONDIMENTO','SOLIDO');
insert into ingredientes values (14,'Agua','BEBIDA','LIQUIDO');
insert into ingredientes values (15,'Caldo de ave','BEBIDA','LIQUIDO');
insert into ingredientes values (16,'Arroz','LEGUMBRE','SOLIDO');
insert into ingredientes values (17,'Bacalao','PESCADO','SOLIDO');
insert into ingredientes values (18,'Guindilla','CONDIMENTO','SOLIDO');
insert into ingredientes values (19,'Perejil','CONDIMENTO','SOLIDO');
insert into ingredientes values (20,'Zanahoria','VERDURA','SOLIDO');
insert into ingredientes values (21,'Caldo de verduras','CONDIMENTO','LIQUIDO');
insert into ingredientes values (22,'Nata liquida','LACTEO','LIQUIDO');
insert into ingredientes values (23,'Queso mascarpone','LACTEO','SOLIDO');
insert into ingredientes values (24,'Leche','LACTEO','SOLIDO');
insert into ingredientes values (25,'Esencia vainilla','CONDIMENTO','LIQUIDO');
insert into ingredientes values (26,'Huevo','OTRO','SOLIDO');
insert into ingredientes values (27,'Harina','OTRO','SOLIDO');
insert into ingredientes values (28,'Frutos rojos','FRUTA','SOLIDO');

insert into ingredientes_platos values (1,1,3);
insert into ingredientes_platos values (2,1,30);
insert into ingredientes_platos values (10,1,300);
insert into ingredientes_platos values (11,1,60);
insert into ingredientes_platos values (12,1,40);
insert into ingredientes_platos values (13,1,5);
insert into ingredientes_platos values (14,1,250);
insert into ingredientes_platos values (15,1,400);
insert into ingredientes_platos values (6,1,80);
insert into ingredientes_platos values (8,1,10);
insert into ingredientes_platos values (16,1,150);
insert into ingredientes_platos values (4,2,400);
insert into ingredientes_platos values (2,2,40);
insert into ingredientes_platos values (3,2,100);
insert into ingredientes_platos values (1,2,10);
insert into ingredientes_platos values (5,2,120);
insert into ingredientes_platos values (6,2,80);
insert into ingredientes_platos values (7,2,120);
insert into ingredientes_platos values (8,2,12);
insert into ingredientes_platos values (9,2,8);
insert into ingredientes_platos values (17,3,125);
insert into ingredientes_platos values (1,3,5);
insert into ingredientes_platos values (18,3,2);
insert into ingredientes_platos values (2,3,20);
insert into ingredientes_platos values (19,3,2);
insert into ingredientes_platos values (3,4,25);
insert into ingredientes_platos values (20,4,60);
insert into ingredientes_platos values (21,4,250);
insert into ingredientes_platos values (22,4,50);
insert into ingredientes_platos values (8,4,5);
insert into ingredientes_platos values (9,4,5);
insert into ingredientes_platos values (2,4,15);
insert into ingredientes_platos values (2,5,3);
insert into ingredientes_platos values (23,5,60);
insert into ingredientes_platos values (24,5,20);
insert into ingredientes_platos values (25,5,1);
insert into ingredientes_platos values (26,5,10);
insert into ingredientes_platos values (27,5,10);
insert into ingredientes_platos values (28,5,20);

insert into clientes values (1,'Pedro Juan','111222333','Bormujos');
insert into clientes values (2,'Jose Miguel','222333444','Bormujos');
insert into clientes values (3,'Maria','333444555','Gines');

insert into comandas values (1,1,1,3,'COCINA',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:00');
insert into comandas values (2,1,1,1,'COCINA',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:00');
insert into comandas values (3,2,2,3,'COCINA',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:05');
insert into comandas values (4,2,2,4,'COCINA',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:05');
insert into comandas values (5,1,1,3,'SERVIDO',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:10');
insert into comandas values (6,2,2,3,'SERVIDO',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:15');
insert into comandas values (7,2,2,4,'SERVIDO',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:16');
insert into comandas values (8,2,2,2,'COCINA',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:16');
insert into comandas values (9,1,1,1,'SERVIDO',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:25');
insert into comandas values (10,1,1,5,'COCINA',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:25');
insert into comandas values (11,2,2,5,'COCINA',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:26');
insert into comandas values (12,2,2,2,'SERVIDO',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:35');
insert into comandas values (13,1,1,5,'SERVIDO',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:37');
insert into comandas values (14,2,2,5,'SERVIDO',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:38');
insert into comandas values (15,1,1,3,'COBRADO',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:50');
insert into comandas values (16,1,1,1,'COBRADO',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:50');
insert into comandas values (17,1,1,5,'COBRADO',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:50');
insert into comandas values (18,2,2,3,'COBRADO',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:50');
insert into comandas values (19,2,2,4,'COBRADO',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:50');
insert into comandas values (20,2,2,2,'COBRADO',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:50');
insert into comandas values (21,2,2,5,'COBRADO',STR_TO_DATE('01-03-2021', '%d-%m-%Y'),'21:50');
insert into comandas values (22,1,3,3,'COCINA',STR_TO_DATE('02-03-2021', '%d-%m-%Y'),'21:05');
insert into comandas values (23,1,3,1,'COCINA',STR_TO_DATE('02-03-2021', '%d-%m-%Y'),'21:10');
insert into comandas values (24,1,3,2,'COCINA',STR_TO_DATE('02-03-2021', '%d-%m-%Y'),'21:12');
insert into comandas values (25,1,3,1,'DEVUELTO',STR_TO_DATE('02-03-2021', '%d-%m-%Y'),'21:12');
insert into comandas values (26,1,3,3,'SERVIDO',STR_TO_DATE('02-03-2021', '%d-%m-%Y'),'21:15');
insert into comandas values (27,1,3,2,'SERVIDO',STR_TO_DATE('02-03-2021', '%d-%m-%Y'),'21:27');
insert into comandas values (28,1,3,5,'COCINA',STR_TO_DATE('02-03-2021', '%d-%m-%Y'),'21:27');
insert into comandas values (29,1,3,5,'SERVIDO',STR_TO_DATE('02-03-2021', '%d-%m-%Y'),'21:37');
insert into comandas values (30,1,3,3,'COBRADO',STR_TO_DATE('02-03-2021', '%d-%m-%Y'),'21:55');
insert into comandas values (31,1,3,2,'COBRADO',STR_TO_DATE('02-03-2021', '%d-%m-%Y'),'21:55');
insert into comandas values (32,1,3,5,'COBRADO',STR_TO_DATE('02-03-2021', '%d-%m-%Y'),'21:55');
