package capitulo05.bloque02.articulosComestibles;

import capitulo04.utils.Utils;


public class Tienda{
    public static void main(String[] args) {
        Articulo[] articulos = new Articulo[4];

        for (int i = 0; i < articulos.length; i++) {
            if (Math.round(Math.random()) == 1) {
                System.out.println("Introduzca los datos de un artículo perecedero");
                articulos[i] = registrarDatos(new ArticuloPerecedero());
                ArticuloPerecedero art = (ArticuloPerecedero) articulos[i];
                art.setFecha(Utils.solicitarStringScannerInline("Introduzca la fecha en la que caduca este artículo: "));
            } else {
                System.out.println("Introduzca los datos de un artículo no perecedero");
                articulos[i] = registrarDatos(new ArticuloNoPerecedero());
            }
        }

        for (int i = 0; i < articulos.length; i++) {
            if (articulos[i] instanceof ArticuloPerecedero artP) {
                System.out.println(artP.toString());
            } else if (articulos[i] instanceof ArticuloNoPerecedero artNP) {
                System.out.println(artNP.toString());
            }
        }
    }

    public static Articulo registrarDatos(Articulo articulo) {
        articulo.setCodigo(Utils.solicitarIntScannerInline("Introduzca código del artículo: "));
        articulo.setNombre(Utils.solicitarStringScannerInline("Introduzca el nombre del artículo: "));
        articulo.setPrecio(Utils.solicitarFloatScannerInline("Introduzca el precio del artículo: "));

        return articulo;
    }
}
