Payroll Management System - Final
Payroll Management System - Final
SUBMITTED BY :
CLASS AND SECTION :
ROLL NUMBER :
REGISTRATION NUMBER :
Roll No :
____________ _____________
BACKEND DETAILS
8
FRONTEND DETAILS
9
LIMITATIONS
11
BIBLIOGRAPHY
12
Feasibility Study
Requirement Definition
Development of Software
Unit Testing
System Testing
Implementation
Evaluation
Maintenance
HARDWARE REQUIREMENT:
SOFTWARE REQUIREMENT:
Windows 7 or higher
My-SQL server 5.5 or higher (as
backend)
Python idle 3.6 or higher or spyder (as
frontend).
Microsoft Word 2010 or higher for
documentation.
Globalized usage.
BACKEND DETAILS
Code:
FRONT-END DETAILS
import sys
def Store():
sql="Insert into
employee(emp_no,name,dob,doj,dept,desig,emp_t
ype,address,contact)values(%s,%s,%s,%s,%s,%s,
%s,%s,%s)"
print('\nPLEASE PROVIDE THE REQUIRED
INFORMATION\n')
acc=int(input('\nENTER THE NEW EMPLOYEE
NUMBER:'))
nm=input('\nENTER THE NAME OF THE
EMPLOYEE:')
dbs=input('\nENTER DATE OF BIRTH(YYYY-MM-
DD):')
dbj=input('\nENTER DATE OF JOINING(YYYY-MM-
DD):')
dep=input('\nENTER THE DEPARTMENT OF
JOINING:')
value=(acc,nm,dbs,dbj,dep,deg,emptype,addr,phn)
try:
mycur.execute(sql,value)
print('PAYROLL FOR',nm,'CREATED
SUCCESSFULLY')
mycon.commit()
except:
print('UNABLE TO CREATE EMPLOYEE
ACCOUNT!!!!!')
def Search_Employee():
ph=int(input('\nENTER THE EMPLOYEE NUMBER
TO SEARCH:'))
def Change_Contact():
sql="Update employee set contact=%s where
emp_no=%s";
ph=int(input('\nENTER THE EMPLOYEE NUMBER
WHOSE MOBILE NUMBER TO MODIFY:'))
addr=input('\nENTER THE NEW MOBILE
NUMBER:')
19 |Computer Science Narayana School
value=(addr,ph)
try:
mycur.execute(sql,value)
mycon.commit()
print('MOBILE NUMBER CHANGED
SUCCESSFULLY')
except:
print('UNABLE TO CHANGE MOBILE
NUMBER!!!!')
def Change_Des():
sql="Update employee set desig=%s where
emp_no=%s";
ph=int(input('\nENTER THE EMPLOYEE NUMBER
WHOSE DESIGNATION TO MODIFY:'))
addr=input('\nENTER THE NEW DESIGNATION:')
value=(addr,ph)
try:
mycur.execute(sql,value)
mycon.commit()
def Promote():
sql2='select emp_type from employee where
emp_no=%s';
sql="Update employee set emp_type='R' where
emp_no=%s";
ph=int(input('\nENTER THE EMPLOYEE NUMBER
WHOSE PROMOTION TO BE DONE:'))
value2=(ph,)
mycur.execute(sql2,value2)
rec=mycur.fetchone()
if(rec[0]=='R'):
print('REGUALAR EMPLOYEE CANNOT BE
PROMOTED')
else:
value=(ph,)
try:
mycur.execute(sql,value)
def Credit():
sql="Insert into
pay(pay_id,emp_no,month,basic,da,hra,allowances,
pf,cur_leave,deduction,overtime,total)values(%s,
%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)"
print('\nPLEASE PROVIDE THE REQUIRED
INFORMATION\n')
payid=random.randint(1000,100000)
acc=int(input('\nENTER THE EMPLOYEE
NUMBER:'))
nm=input('\nENTER THE MONTH IN WHICH
SALARY TO BE CREDITED:')
basic=int(input('\nENTER THE BASIC SALARY:'))
da=basic*125/100
hra=basic*32/100
value=(payid,acc,nm,basic,da,hra,allowance,pf,cur
_leave,deduction,over,total)
try:
mycur.execute(sql,value)
print('\nRS.',total,'CREDITED TO THE
ACCOUNT FOR',nm)
mycon.commit()
except:
print('UNABLE TO CREDIT SALARY.CONTACT
HR DEPARTMENT!!!!!')
print('--------------------------------------------------------------'
)
print('NET SALARY:\t\t\t',rec[11])
'''def Graph():
ad=int(input('ENTER THE PAYMENT-ID:'))
sql='Select * from pay where pay_id=%s'
value=(ad,)
mycur.execute(sql,value)
T=mycur.fetchone()
N=[T[3],T[4],T[5],T[6],T[7],T[9],T[10],T[11]]
L=['BASIC','DA','HRA','ALLOWANCE','PF','DEDUCTIO
N','OVERTIME','TOTAL']
def Remove():
ph=int(input('\nENTER THE EMPLOYEE NUMBER
TO DELETE:'))
sql='Delete from employee where emp_no=%s'
value=(ph,)
try:
mycur.execute(sql,value)
mycon.commit()
print('EMPLOYEE REMOVED')
except:
mycon.rollback()
print('UNABLE TO REMOVE ACCOUNT!!!')
CHANGING ADDRESS OF AN
EMPLOYEE
CHANGING DESIGNATION OF AN
EMPLOYEE
UPGRADING AN EMPLOYEE
CREDITING SALARY
REMOVING AN EMPLOYEE
LIMITATIONS
BIBLIOGRAPHY
WEBSITES:
www.geeksforgeeks.org
https://docs.python.org/3/
https://www.w3schools.com/python/