-- v_almacen
select a.ubigeo, a.departamento, a.provincia, a.latitud, a.longitud,
    a.esPrincipal, r.nombre AS region 
  from almacen a join region r on a.region_fk = r.id;

-- v_camion
select c.id, c.placa, c.kilometraje, c.estado, 
    tc.nombre AS 'tipo', tc.capacidad
  from camion c join tipoCamion tc on c.tipoCamion_fk = tc.id;

-- v_pedido
select cli.nombreCompleto AS cliente, cli.dni AS RUC, 
    alm.ubigeo, alm.provincia,
    ped.cantidad, ped.fechaPedido, ped.plazoEntrega, ped.estado, 
    ped.codigoPedido AS URL_pedido, 
    usu.usuario AS 'registrado por' 
  from pedido ped join cliente cli on ped.cliente_fk = cli.id 
      inner join usuario usu on ped.usuario_fk = usu.id
      inner join almacen alm on ped.almacen_fk = alm.id;

-- v_tramo
select t.id as 'tramo', t.distancia, t.estaBloqueado, 
    a1.id, a1.provincia, a2.id, a2.provincia
  from tramo t inner join almacen a1 on t.almacen1_fk = a1.id
    inner join almacen a2 on t.almacen2_fk = a2.id
  order by a1.id;

-- v_usuario
select u.usuario, u.nombre, u.apellido, u.dni, u.correo, 
    u2.nombre AS 'registered by', r.nombre AS rol 
  from usuario u left join usuario u2 on u.creador_fk = u2.id 
    inner join rol r on u.rol_fk = r.id;

-- PTG (lista de rutas)

-- "Select de ruta": Listado de tramos de la ruta con id=1
select t_r.orden, r.fechaInicio, r.fechaFin,
    a1.provincia, a2.provincia, t.distancia,
    c.placa, t_r.paquetesEntregar
  from ruta r inner join tramo_ruta t_r on r.id = t_r.ruta_fk
    inner join tramo t on t.id = t_r.ruta_fk
    inner join almacen a1 on t.almacen1_fk = a1.id
    inner join almacen a2 on t.almacen2_fk = a2.id

    inner join camion c on r.camion_fk = c.id
  where r.id = 1
  order by t_r.orden;
