Boa tarde, preciso, de uma ajuda.
Estou criando um holerite no Java utilizando 2 pacotes e 3 classes, porém não consigo retornar o líquido no final do algoritmo.
Está com o mesmo formato que os cálculos anteriores.
****Pacote Holerite
****Classe Principal.
package holerite;
import calculo.Desconto;
import java.util.Scanner;
import javax.swing.JOptionPane;
public class Principal {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String nome;
double salario_bruto = 0;
double horasExtras = 0;
char entra;
String holerite;
int op = 0;
while (op != 2) {
op = (int) Double.parseDouble(JOptionPane.showInputDialog("Escolha uma opção:\n 1 - Preencher holerite\n 2 Sair "));
if (op == 2) {
break;
}
switch (op) {
case 1:
do {
nome = JOptionPane.showInputDialog("Digite nome do funcionario ");
salario_bruto = Double.parseDouble(JOptionPane.showInputDialog("Digite valor do salario: "));
while (salario_bruto <= 0) {
salario_bruto = Double.parseDouble(JOptionPane.showInputDialog("Salário precisa ser maior que zero: "));
}
horasExtras = Double.parseDouble(JOptionPane.showInputDialog("Digite o valor referente a hora extra "));
Visual visu = new Visual();
Desconto Inss = new Desconto();
Desconto salario = new Desconto();
Desconto irpf = new Desconto();
Desconto Vt = new Desconto();
Desconto Vr = new Desconto();
Desconto Cm = new Desconto();
Desconto Va = new Desconto();
Desconto He = new Desconto();
Desconto Liquido = new Desconto();
Inss.inss(salario_bruto);
salario.salario(salario_bruto, Inss.inss(salario_bruto));
irpf.irpf(salario.salario(salario_bruto, Inss.inss(salario_bruto)));
Vt.vt(salario.salario(salario_bruto, Inss.inss(salario_bruto)));
Vr.vr(salario.salario(salario_bruto, Inss.inss(salario_bruto)));
Cm.cm(salario.salario(salario_bruto, Inss.inss(salario_bruto)));
Va.va(salario.salario(salario_bruto, Inss.inss(salario_bruto)));
He.horas_extras(salario.salario(salario_bruto, Inss.inss(salario_bruto)), horasExtras);
Liquido.Liquido(salario.salario(salario_bruto, Inss.inss(salario_bruto)), irpf, Vt, Vr,Cm, Va, horasExtras);
visu.Visualnome(nome);
visu.Visualsalario_bruto(salario_bruto);
visu.Visualinss(Inss.inss(salario_bruto));
visu.Visualirpf(irpf.irpf(salario.salario(salario_bruto, Inss.inss(salario_bruto))));
visu.Visualvt(Vt.vt(salario.salario(salario_bruto, Inss.inss(salario_bruto))));
visu.Visualvr(Vr.vr(salario.salario(salario_bruto, Inss.inss(salario_bruto))));
visu.Visualcm(Cm.cm(salario.salario(salario_bruto, Inss.inss(salario_bruto))));
visu.Visualhe(He.horas_extras(salario.salario(salario_bruto, Inss.inss(salario_bruto)), horasExtras));
visu.VisualLiquido(salario.salario(salario_bruto, Inss.inss(salario_bruto)), irpf, Vt, Vr,Cm, Va, horasExtras);
holerite = JOptionPane.showInputDialog("Deseja emitir outro holerite?");
if ((holerite.compareToIgnoreCase("n") == 0)) {
break;
}
} while (holerite.compareToIgnoreCase("s") == 0);
}
}
}
}
*****Pacote Calculo
*****Classe desconto
package calculo;
public class Desconto {
public double inss(double salario_bruto) {
int inss = (int) (double) 0;
if (salario_bruto <= 1212.00) {
inss = (int) (salario_bruto * 0.075);
} else if (salario_bruto <= 2427.35) {
inss = (int) (salario_bruto * 0.09);
} else if (salario_bruto <= 3641.03) {
inss = (int) (salario_bruto * 0.12);
} else if (salario_bruto <= 7087.22) {
inss = (int) (salario_bruto * 0.14);
} else if (salario_bruto >= 7087.22) {
inss = (int) 828.39;
}
return inss;
}
public double salario(double salario_bruto, double inss) {
double salario = 0;
salario = salario_bruto - inss;
return salario;
}
public double irpf(double salario) {
double irpf = 0;
if (salario <= 1903.98) {
irpf = 0;
} else if (salario <= 2826.65) {
irpf = 142.80;
} else if (salario <= 3751.05) {
irpf = 354.80;
} else if (salario <= 4664.68) {
irpf = 636.13;
} else if (salario >= 4664.68) {
irpf = 869.36;
}
return irpf;
}
public double vt(double salario) {
double vt = 0.06;
double desconto_vt = salario * vt;
return desconto_vt;
}
public double vr(double salario) {
double vr;
if (salario >= 1212.00) {
vr = salario * 0.03;
} else {
vr = 0;
}
return vr;
}
public double cm(double salario) {
double cm = 0;
if (salario >= 1212.00) {
cm = salario * 0.04;
} else {
cm = 0;
}
return cm;
}
public double va(double salario) {
double va ;
if (salario >= 3636.00) {
va = salario * 0.02;
} else {
va = 0;
}
return va;
}
public double horas_extras(double salario, double horasExtras) {
int he = (int) (double) 0;
he = (int) (horasExtras * ((salario / 220) * 1.5));
return he;
}
public double Liquido(double salario, double irpf, double desconto_vt, double vr, double cm, double va, double he) {
double liquido;
liquido = salario - irpf - desconto_vt - vr - cm - va + he;
return liquido;
}
}
******Pacote Holerite
*****Classe Visual
package holerite;
public class Visual{
public void Visualnome(String nome){
System.out.println("---------------------------------------------------------");
System.out.println("|\t\t\t - HOLERITE - \t\t\t|");
System.out.println("---------------------------------------------------------");
System.out.printf("|Nome:\t" + nome + "\t|");
}
public void Visualsalario_bruto(double salario_bruto){
System.out.println("|\t\t\t\t\t\t");
System.out.printf("|Salário bruto: %.2f |", salario_bruto);
}
public void Visualinss(double inss) {
System.out.println("|\t");
System.out.printf("|Desconto INSS: %.2f |", inss);
}
public void Visualirpf(double irpf) {
System.out.println("|\t\t\t|");
System.out.printf("|Desconto IRPF: %.2f |", irpf);
}
public void Visualvt(double desconto_vt) {
System.out.println("|\t\t\t\t|");
System.out.printf("|Desconto vt: %.2f |", desconto_vt);
}
public void Visualvr(double vr) {
System.out.println("|\t\t\t\t|");
System.out.printf("|Desconto VR: %.2f |", vr);
}
public void Visualcm(double cm){
System.out.println("|\t\t\t\t|");
System.out.printf("|Desconto CM: %.2f |", cm);
}
public void Visualva(double va){
System.out.println("|\t\t\t\t|");
System.out.printf("|Desconto VA: %.2f |", va);
}
public void Visualhe (double horas_extras){
System.out.println("|\t\t\t\t|");
System.out.printf("|Horas extras: %.2f |", horas_extras);
}
public void VisualLiquido(double liquido){
System.out.println("|\t\t\t\t|");
System.out.printf("|O salário líquido é: %.2f |", liquido);
}
}
Obrigado.