VB icon

Payroll System in Java

Email
Submitted on: 5/7/2016 3:39:19 AM
By: Jake R. Pomperada  
Level: Beginner
User Rating: Unrated
Compatibility: Java (JDK 1.1), Java (JDK 1.2), Java (JDK 1.3), Java (JDK 1.4), Java (JDK 1.5)
Views: 2517
author picture
 
     A simple payroll system that I wrote using Java programming language a long time ago. Add me at Facebook my address is jakerpomperada@gmail.com and jakerpomperada@yahoo.com My mobile number here in the Philippines is 09173084360.
 
code:
Can't Copy and Paste this?
Click here for a copy-and-paste friendly version of this code!
				
//**************************************
// Name: Payroll System in Java
// Description:A simple payroll system that I wrote using Java programming language a long time ago.
 Add me at Facebook my address is jakerpomperada@gmail.com and jakerpomperada@yahoo.com
My mobile number here in the Philippines is 09173084360.
// By: Jake R. Pomperada
//**************************************

import java.io.*;
import java.text.*;
public class payroll_program{
static BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
public static void main(String [] args) throws IOException {
String EmpCode = “”;
while(!EmpCode.equals(“0?)) {
System.out.print(“Enter Employee Code: “);
EmpCode = in.readLine();
String EmpInfo[] = getInfo(EmpCode);
double basicsalary = Double.parseDouble(EmpInfo[3]);
 
System.out.println(” NEW MEGA ENTERPRISES PAYROLL SYSTEM“);
System.out.println(”\n\n“);
System.out.println(“READ ME FIRST : ****************************”);
System.out.println(” * Input for Regular Hours — > 8:00 – 17:00 “);
System.out.println(” * Input for OT Hours — > 17:30 – 20:30 “);
System.out.println(” * OT Income = ( Basic Salary / 8 ) * 1.1 “);
System.out.println(” * Holiday = ( Basic Salary / 8 ) * 1.1 “);
System.out.println(“*******************************************”);
System.out.println(“============= Employee Information ==========”);
System.out.println(“Employee Code: ” + EmpInfo[0]);
System.out.println(“Employee Name: ” + EmpInfo[1]);
System.out.println(“Employee Position: ” + EmpInfo[2]);
System.out.println(“Employee Basic Salary: ” + EmpInfo[3]);
System.out.println(“=======================================”);
String days[] = {“Monday”,”Tuesday”,”Wednesday”,”Thursday”,”Friday”};
double timeInOut[][] = new double[2][5];
double otInOut[][] = new double[2][5];
String strTemp = “”;
String tmpTime[] = new String[2];
double tmpHours, totalHours = 0, tmpRegIncome = 0, totalRegIncome = 0,
tmpOTHours,totalOTHours = 0, tmpOTIncome, totalOTIncome = 0;
for(int i = 0; i < 5; i++){
System.out.print(“Time In for ” + days[i] + “: “);
strTemp = in.readLine();
tmpTime = strTemp.split(“:”);
timeInOut[0][i] = Double.parseDouble(tmpTime[0]) + (Double.parseDouble(tmpTime[1]) / 60);
System.out.print(“Time Out for ” + days[i] + “: “);
strTemp = in.readLine();
tmpTime = strTemp.split(“:”);
timeInOut[1][i] = Double.parseDouble(tmpTime[0]) + (Double.parseDouble(tmpTime[1]) / 60);
System.out.print(“is ” + days[i] + ” Holiday?: “);
String isHoliday = in.readLine();
System.out.print(“OT Time In for ” + days[i] + “: “);
strTemp = in.readLine();
tmpTime = strTemp.split(“:”);
otInOut[0][i] = Double.parseDouble(tmpTime[0]) + (Double.parseDouble(tmpTime[1]) / 60);
System.out.print(“OT Time Out for ” + days[i] + “: “);
strTemp = in.readLine();
tmpTime = strTemp.split(“:”);
otInOut[1][i] = Double.parseDouble(tmpTime[0]) + (Double.parseDouble(tmpTime[1]) / 60);
if(timeInOut[0][i] < 8)timeInOut[0][i] = 8;
if(timeInOut[1][i] > 17)timeInOut[1][i] = 17;
if(otInOut[0][i] < 17.5 && otInOut[0][i] != 0)otInOut[0][i] = 17.5;
if(otInOut[1][i] > 20.5)otInOut[1][i] = 20.5;
tmpHours = timeInOut[1][i] – timeInOut[0][i];
tmpOTHours = otInOut[1][i] – otInOut[0][i];
if(tmpHours > 4)tmpHours–;
if(isHoliday.equals(“Yes”)){
totalOTHours += tmpHours;
totalOTIncome += tmpHours * ((basicsalary / 8) * 1.1);
totalHours += tmpHours;
tmpRegIncome = tmpHours * (basicsalary / 8);
}else{
totalHours += tmpHours;
tmpRegIncome = tmpHours * (basicsalary / 8);
}
totalOTHours += tmpOTHours;
totalOTIncome += tmpOTHours * ((basicsalary / 8) * 1.1);
totalRegIncome += tmpRegIncome;
}
double grossincome = totalRegIncome + totalOTIncome;
DecimalFormat df = new DecimalFormat(“#.##”);
System.out.println(“=========== Total Output ==============”);
System.out.println(“Total work hours: ” + df.format(totalHours));
System.out.println(“Total regular income: ” + df.format(totalRegIncome));
System.out.println(“Total OT hours: ” + df.format(totalOTHours));
System.out.println(“Total OT Income: ” + df.format(totalOTIncome));
System.out.println(“Gross Income: ” + df.format(grossincome));
System.out.println(“=====================================”);
System.out.println(" THANK YOU FOR USING THIS PROGRAM");
}
}
static String[] getInfo(String EmpCode){
String getInfo[] = new String [4];
String strLine;
int ctr =0;
boolean isFound = false;
try{
FileInputStream fstream = new FileInputStream(“payroll.txt”);
DataInputStream dstream = new DataInputStream(fstream);
BufferedReader br = new BufferedReader(new InputStreamReader(dstream));
while((strLine = br.readLine()) != null && ctr < 4){
if(strLine.equals(EmpCode))isFound = true;
if(isFound){
getInfo[ctr] = strLine;
ctr++;
}
}
br.close();
}catch(IOException e){
System.out.println(“Error: ” + e.getMessage());
}
return getInfo;
}
}


Other 53 submission(s) by this author

 


Report Bad Submission
Use this form to tell us if this entry should be deleted (i.e contains no code, is a virus, etc.).
This submission should be removed because:

Your Vote

What do you think of this code (in the Beginner category)?
(The code with your highest vote will win this month's coding contest!)
Excellent  Good  Average  Below Average  Poor (See voting log ...)
 

Other User Comments


 There are no comments on this submission.
 

Add Your Feedback
Your feedback will be posted below and an email sent to the author. Please remember that the author was kind enough to share this with you, so any criticisms must be stated politely, or they will be deleted. (For feedback not related to this particular code, please click here instead.)
 

To post feedback, first please login.