Groovy web console

subscribe to the feed Subscribe
to this
site

Title

Published 4 months ago by Adriel
Actions Execute script  ▶ Edit in console Back to console Show/hide line numbers View recent scripts
class Controle{
    static void main(String[] args){
        Cliente cliente1 = new Cliente('Adriel', 19);
        cliente1.falaCliente();
        Valor valor = new Valor(cliente1);
        valor.desconto();
        valor.falaValor();
    }
}

class Cliente{
    def nome;
    def idade;
    
    Cliente( def name, def age){
        nome = name;
        idade = age;
    }
    def isMenor(){
        idade < 18;
    }

    def isIdoso(){
        idade > 60;
    }
    
    def falaCliente(){
        println("O cliente $nome  tem $idade anos");
    }
}


class Bilhete{
    
}


class Data{
    def diaSemana = 'quarta';
    def mesAtual = 12;
}


class Valor{
    private final Cliente cliente;
    def preco = 20;
    def desconto = 0;
    def valorDesconto;

    public Valor(Cliente cliente) {
        this.cliente = cliente;
    }

    Data data = new Data();

    
    def desconto(){
        if(cliente.isIdoso() || data.mesAtual == 12 && cliente.isMenor()){
            desconto += 10;
            valorDesconto = preco - (preco*desconto)/100;
        }else if(!cliente.isMenor() && data.diaSemana == 'quarta'){
            desconto += 5;
            valorDesconto = preco - (preco*desconto)/100;
        }  

    }
    
    def falaValor(){
        println('Vai pagar ' + valorDesconto);
    }
}