0% found this document useful (0 votes)
37 views38 pages

Adyasha Cs

Uploaded by

banditapatra084
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
37 views38 pages

Adyasha Cs

Uploaded by

banditapatra084
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 38

JUPITER PUBLIC SCHOOL

SESSION 2024-25
COMPUTER SCIENCE PROJECT
ON
ELECTRICITY BILLINGS
SUBMITTED BY:
ADYASHA SAHOO
XII-M3
UNDER THE GUIDANCE OF:
MR.SUSANT KUMAR NAYAK
TABLE OF CONTENTS
 ACKNOWLEDGEMENT
 CERTIFICATE

 TABLE OF CONTENTS
 OBJECTIVE

 INTRODUCTION

 PROJECT REPORT(Source code and ER


diagram are mandatory , flowchart if
applicable)
 CONCLUSION
 BIBLIOGRAPHY
ACKNOWLEDGEMENT

Firstly, I would like to thank our computer


teacher(Susant Kumar Nayak),because he always
supported and guided us while doing this project . He
very well cleared all the doubts I had regarding this
project. Also , I would like to especially thank my
parents and friends who helped me a lot to complete
this project within the limited time.
The journey of making this project has been beautiful,
as well as knowledgeable for me and I have learned a lot
from it.
Once again , thanks to everyone who was involved with
this project from beginning to end.
CERTIFICATE
This is to certify that Adyasha Sahoo student of class XII has
successfully completed computer project on Electricity Billings
laid down in the regulation of CBSE in Jupiter Public School.

Signature of Principal

Signature of Internal Signature of External

Signature of Student
INTRODUCTION
Electricity Billing System is a software-based application.
i. This project aims at serving the department of electricity by computerizing the
billing system.
ii. It mainly focuses on the calculation of units consumed during the specified time and
the money to be charged by the electricity offices.
iii. This computerized system will make the overall billing system easy, accessible,
comfortable, and effective for consumers.
To design the billing system more service oriented and simple, the following features
have been implemented in the project. The application has high speed of performance
with accuracy and efficiency.
The software provides facility of data sharing, it does not require any staff as in the
conventional system. Once it is installed on the system only the meter readings are to
be given by the admin where customer can view all details, it has the provision of
security restriction.
The electricity billing software calculates the units consumed by the customer and
makes bills, it requires small storage for installation and functioning. There is provision
for debugging if any problem is encountered in the system.
The system excludes the need of maintaining paper electricity bill, administrator does
not have to keep a manual track of the users, users can pay the amount without visiting
the office. Thus, it saves human efforts and resources.
PREAMBLE
We, the owners of our project, respect all customers and make them happy with our
service.
The main aim of our project is to satisfy customer by saving their time by payment process,
maintaining records, and allowing the customer to view his/her records and permitting them
to update their details.
The firm handles all the work manually, which is very tedious and mismatched.
The objectives of our project are as follows:
 To keep the information of customer.
 To keep the information of consuming unit energy of current month.
 To keep the information of consuming unit energy of previous month.
 To calculate the units consumed every month regularly.
 To generate the bills adding penalty and rent.
 To save the time by implementing payment process online.
Fig-Block diagram showing the proposed online Electricity billing system

Consumer user Administrative


interface user interface

Electricity online
billing homepage
PROBLEM STATEMENT
The manual system is suffering from a series of drawbacks.
Since whole of the bills is to be maintained with hands the
process of keeping and maintaining the information is very
tedious and lengthy to customer. It is very time consuming
and laborious process because, staff need to be visited the
customers place every month to give the bills and to receive
the payments. For this reason, we have provided features
Present system is partially automated(computerized),
existing system is quite laborious as one must enter same
information at different places.
PROPOSED SOLUTION
 This project system excludes the need of maintaining
paper electricity bill as all the electricity bill records are
managed electronically.
 Administrator doesn’t have to keep a manual track of the
users. The system automatically calculates fine.
 Users don’t have to keep a manual track of the users. The
system automatically calculates fine.
 There is no need of delivery boy for delivery bills to user’s
place.
Thus, it saves human efforts and resources.
SYSTEM ARCHITECTURE OF SYSTEM
ER DIAGRAM OF ELECTRICITY BILL
MANAGEMENT SYSTEM:
Entity User:

Every User detail needs to be stored in a proper manner with very needed
attributes. All the other tasks can be performed only if the user is
authenticated. After the admin has registered and is verified by the admin
then the user can perform all the tasks on it.

Some of the features of the user are as follows:


Primary key User id:

The user id is system generated and unique, which can be referenced in any
other entity. This mostly for recognizing it in a unique way anywhere in the
program.

User name:

User name is taken from the user and fed into this it is properly validated so
that no mistake happens.
Number:
The phone number is taken here to keep the member updated and the
confirmation of the event is also managed through this method.

Email:
Email is taken to make member aware of new offers new events and for
future references, it is also relevant.

Address:
Address of the user is required at the time the user is registering itself on
the system.

Password:
The password is required to login into the system and the password must
contain a special character, a numeric character, and an upper-case letter.
Password must contain at least six characters. One must keep the password
difficult so that no one can get into your account and make any changes.
Entity Customer:

The customer is the entity that requires it to get updated about their
monthly usage of electricity and to pay their monthly bill in online mode if
they want to. If any customer has any query, then there is also an option to
put your query and it will be answered by your service provider.

Some of the features of the customer entity are explained below:


Ward number:

Each customer is divided into awards as it is easy to manage a bunch of


people in a branch. Each branch can have multiple wards but the number of
customers in an award is always limited. So, an award number is always
given to a customer.

Address:

The address is required because the meter is put into the home and the
service provider has to go to the customer’s home every month to read the
units used by the customer. After knowing the units used, only then it can be
updated on this system. So, the address of the customer is required.
Entity payment:

This module is present in both the interfaces but the options that are
provided are different. In the customer’s interface, there is an option to pay
the electricity bill using their debit card or by net banking. The customer can
also pay the bill by cash by going to the particular branch.
Customers can also see their payment status after paying their bills. In the
employee’s module, there is no option to pay the bill, they can only see the
monthly salary status after deducting their leaves. One thing that employees
can do is that they can cut the connection to a customer that has not paid
their bill in the given time period.
Admin cannot see any details they can only help the user in registration by
verifying the user.

Some features of payment entity are explained further:


Number:
The phone number is taken here to keep the member updated and the
confirmation of the event is also managed through this method.

Address:
The address is required because the meter is put into the home and the
service provider has to go to the customer’s home every month to read the
units used by the customer. After knowing the units used, only then it can be
updated on this system. So, the address of the customer is required.
Entity Billing Cycle:
In this entity, there are the monthly cycles of bills are shown. In the
employee’s module, it is present to add the bill to the customer’s monthly
billing cycle and in the customer’s interface, it is provided to pay the bill
and to check the old bills if required.

Other attributes of this entity are as follows:

Name:
The user must know the names of the courses which he or she has chosen
either to teach or to study. who is on duty in the same prison?

Phone number:
The phone number is taken here to keep the member updated and the
confirmation of the event is also managed through this method.
ER DIAGRAM
USE CASE DIAGRAM OF ELECTRICITY BILL
MANAGEMENT SYSTEM:
In this use case, as you can see, we have our system as a box and the users
who use our system are of the kind of outside the box but related to the
system. There are two kinds of users one is admin and the other is user type.

Users:
There are two users that are present here in this system. One is admin but
the other is a user. This user has all the privileges but it cannot register itself
on this system as the admin needs to verify the registering user.

After the admin verifies the user only then he is eligible to use the system
and after that, it has all the privileges. Attributes given to the user are:

Adding user:

Admin can add a new user and can save it. The details of the user can be
seen only by the valid users.
Adding staff:
In this attribute or column, the user can add the details about the staff
members. Adding customers: this entity is about the details of the customers
who are using the service from the company and all other details of them.

Admin panel:
There can be only one account of admin. Admin can add the users. When a
user tries to register on the prison management system then the request
goes to admin and if the admin verifies only the user can register itself on it.

Other privileges that admin has been explained below:

• He can log in through his id and password. The password is made very
secure so that no person can guess and make it difficult for hackers to
crack.
• He has access to a profile of his own and he can search for detail of other
Users and can see the detail him.
• This admin is responsible for creating and uploading the Menu card to
every User in the Interface. Admin can also delete the cards according to
the requirement.
• He can add a user to that account and give access to handling the prison
on their own.
• He can manipulate the data of any user. In this, we are showing here the
interaction of the users with our system through our use case diagram.
FLOWCHART
SOURCE CODE
**import mysql.connector as sql , random , datetime as dt
import matplotlib.pyplot as plt
conn=sql.connect(host='localhost',user='root',passwd='mc.la.ren',data
base='EBS')
if conn.is_connected():
print("successfully connected")
c='YES' or "yes" or 'Yes'
V='YES' or "yes" or 'Yes'
c1=conn.cursor()
while c=='YES' or "yes" or 'Yes': print('************************WELCOME TO
ELECTRICITY BILLING SYSTEM************************')
print(dt.datetime.now())
print('1.NEW USER')
print('2.EXISTING USER')
print('3.EXIT')
choice1=int(input('ENTER YOUR CHOICE:'))
if choice1==1:
username=input("Enter your username number :")
password=input("Enter your password:")
confirmpasswd=input("Confirm your password:")
if password==confirmpasswd:
info1="insert into newuser values('{}','{}','{}')".Format (username,
password, confirmpasswd)
c1.execute(info1)
conn.commit()
c=input("do you want to continue?(yes or no)")
else:
print('your confirm password is incorrect')
print('Try again')
c=input("do you want to continue?(yes or no)")
elif choice1==2:
username=input('Enter your username:')
password=input('Enter your password:')
info2="select * from newuser where username='{}' and password = '{} '“.
format(username,password)
c1.execute(info2)
data=c1.fetchall()
while V=='YES' or "yes" or 'Yes':
if any(data):
print('************************WELCOME TO ELECTRICITY BILLING SYSTEM
************************')
print("1.ACCOUNT SETTINGS")
print("2.TRANSACTION")
print("3.VIEW CUSTOMER DETAILS")
print("4.GRAPHICAL REPRESENTATION")
print('5.EXIT')
choice2=int(input('ENTER YOUR CHOICE'))
if choice2==1:
print('1.NEW CUSTOMER')
print('2.DELETE EXISTING ACCOUNT')
choice12=int(input('ENTER YOUR CHOICE:'))
if choice12==1:
accountno=random.randrange(1000000,9999999,10)
print("your accountno is",accountno)
boxid=input("enter your mete box ID:")
bankname=input('Enter your BANK NAME :')
bankbranch=input('Enter your BANK BRANCH :')
name=input('Enter your name :')
address=input('Enter your address :')
areacode=int(input('Enter your area PIN CODE :'))
phoneno=int(input('Enter your PHONE NUMBER :'))
email=input('Enter your email :')
info2="insert into AddNewCustomer values ({},'{}','{}','{}','{}',{},{},'{}','{}')".
Format(accountno,bankname,bankbranch,name,address,areacode,phoneno,
email,boxid)
c1.execute(info2)
conn.commit()
V=input("do you want to continue?(yes or no)")
if V=='yes':
continue
else:
break
elif choice12==2:
acc=input("ENTER YOUR ACCOUNT NUMBER:")
use=input("ENTER YOUR USERNAME:")
info6=c1.execute("delete from Transaction where accountno='{}'". Format
(acc))
info7=c1.execute("delete from AddNewCustomer where accountno='{}'".
format(acc))
info8=c1.execute("delete from newuser where username='{}'".format(use))
c1.execute(info6)
c1.execute(info7)
c1.execute(info8)
conn.commit()
print("THANK YOU FOR USING OUR SOFTWARE,YOUR ACCOUNT IS
SUCCESFULLY DELETED")
V=input("do you want to continue?(yes or no)")
if V=='yes':
Continue
else:
break
elif choice2==2:
accountno=int(input('Enter your account number :'))
info10="select * from Transaction where accountno="+str(accountno)
c1.execute(info10)
data3=c1.fetchall()
for row in data3:
paid=row[6]
if paid=='yes':
print('you have already paid the bill')
break
else:
unit=random.randint(0,101)
print('Dear customer, you have used ',unit,'units of electricity.')
print('One unit of curent is 150 ruppees')
amount=150*unit
toda=dt.date.today()
deadline=dt.date(2020,1,30)
if deadline<toda:
fine=(toda-deadline)*30
totamt=amount+fine
print('you have dealyed for ',toda-deadline,'days.The fine per day is 30
rupees.')
GST=(15/100)*totamt
totalamt=totamt+GST
print('Pleae payup ',totalamt,'rupees inclding GST')
p=input("Please Enter YES to transact")
if p=="YES"or 'Yes'or'yes':
print("Transaction successful")
print("You have paid the bill")
else:
print('plz pay the bill sooner')
else:
totamt=0
GST=(15/100)*amount
totalamt=amount+GST
print('Pleae payup ',totalamt,'rupees inclding GST')
p=input("Please Enter YES to transact")
if p=="YES":
print("Transaction successful")
print("You have paid the bill")
else:
print('plz pay the bill sooner')
info3="insert into Transaction values({},{},'{}',{},{},{},'{}')“. Format
(accountno,unit,toda,totamt,GST,totalamt,p)
c1.execute(info3)
conn.commit()
V=input("do you want to continue?(yes or no)")
if V=='yes':
continue
else:
break
elif choice2==3:
accountno=int(input('Enter your account number :'))
info4="select * from AddNewCustomer where accountno=" + str(accountno)
c1.execute(info4)
data1=c1.fetchall()
for row in data1:
print(" Account Number: ", row[0])
print("bankname:",row[1])
print("bankbranch:",row[2])
print("Person name:",row[3])
print("Your meter device ID=",row[8])
print("Residential address:",row[4])
print("area code:",row[5])
print("phone number:",row[6])
print("email:",row[7])
info5="select * from Transaction where accountno=" + str(accountno)
c1.execute(info5)
data2=c1.fetchall()
for row in data2:
print(" Unit : ",row[1])
print(" paid on:",row[2])
print("amount to be paid without GST:",row[3])
print("GST=",row[4])
print("amount to be paid including GST:",row[5])
V=input("do you want to continue?(yes or no)")
if V=='yes':
continue
else:
break
elif choice2==4:
info9="select accountno,totalamt from Transaction"
c1.execute(info9)
L1,L2,=[],[]
for i in c1.fetchall():
L1.append(i[0])
L2.append(i[1])
plt.plot(L1,L2)
plt.title("GRAPH")
plt.show()
V=input("do you want to continue?(yes or no)")
if V=='yes':
Continue
else:
break
elif choice2==5:
print("THANK YOU!!!! VISIT AGAIN!!!!")
Break
c='yes'
else:
print('username / password is incorrect')
Break
c=input("do you want to try again?(yes or no)")
else:
print("THANK YOU!!!! VISIT AGAIN!!!!")
V='no‘

elif choice1==3:
print("THANK YOU!!!! VISIT AGAIN!!!!")
c='no'
Break
else:
print("invalid choice")
c=input("do you want to try again?(yes or no)")
else:
print("THANK YOU!!!! VISIT AGAIN!!!!")
c='no'**
OUTPUT
successfully connected ************************WELCOME TO
ELECTRICITY BILLING SYSTEM************************
2022-02-10 12:22:23.390606
1.NEW USER
2.EXISTING USER
3.EXIT ENTER YOUR CHOICE:1
Enter your username number :1
Enter your password:1
Confirm your password:1
MODULES OF ELECTRICITY BILL
MANAGEMENT SYSTEM
Our system has only two main interfaces. One is for the admin and the other
one is for the user, the here user can be a customer or an employee.

Along with these, we have other interfaces which can be discussed as below:

Login:
After registration, one can log in to the system as the end-user of the system
on the behalf of the user. The user will get only those privileges that are
given to the user for which one has registered. For example, if a user has
registered as a customer, then the user only has the privileges to view the
data and cannot make any changes to the data that is shown.

User:
The user can be anyone either a customer or an employee. If the user is an
employee, then he can make changes to the data like adding units in the
bill, used by a customer. If the user is a customer, then he can only see the
details of his account, not of any other account. The customer can see the
monthly usage of electricity and can pay the bill but cannot make any
changes to the data.
Admin:
This module can only have one account and this account has all the privileges
which a user account might not have. First of all, the admin account is
created, and then if the admin verifies a registering user, then his account
will be created otherwise not.

Queries:
In this module, the customer can ask any query he has and his question with
his details will be sent to the person who is managing queries and then he or
she can reply to the query of a customer. Admin can also see any query made
by the customer and can also reply to the customer.

Department:
In this section, all the employee’s details can be seen by the privileged user.
All the employees are divided into different sections according to their job
profile. Employees working in multiple sections might get repeated into the
different departments. Only admin has the privilege to make any change into
an employee’s account.

Meters:
In this, new customers can be added, monthly bills can be sent to the
customer’s account, any particular customer can be found using a unique
meter id and the remaining balance of a customer can be checked.
Other Features:
There are other various features that are provided in this attendance
management system like updating results and checking results by the
students. Paying fees either by online mode or by offline mode.

System Design of Electricity Bill Management


System:

Now this prison management system is designed in such a way that it takes
fewer resources to work properly.

It has its own sort of minimum requirements that we need to take care
of:

• The system needs a minimum of 2 GB of ram to run all the features


smoothly and suddenly.
• It needs a minimum of 1.3 GHz processor to run smoothly as less than that
may create problems.
• The system needs to be operated by some authorized person as wrong
hands can make it irresponsible.
• Rest is all up to the user’s usage will care for hardware.
• For security Antivirus is recommended.
FUNCTIONAL AND NON-FUNCTIONAL OF
ELECTRICITY BILL MANAGEMENT
SYSTEM
The functional requirement of the electricity bill management system is that
it does what it is meant for. A functional requirement describes what a
software system should do, while non-functional requirements place
constraints on how the system will do so. Functional requirements specify a
function that a system or system component must be able to perform.
It can be documented in various ways. The most common ones are written
descriptions in documents and use cases.

Few of its functional requirements are as given below: –

User data should be fed into the system:


this system is doing that properly in the user entity. After fetching the data
of the customer, the bill can be made and sent to the customer.

Admin can add the users:


Admin can verify and add the user, which is they are doing with this system.
He can also delete the users if required.
Non-Functional of Electricity Bill Management System: –

Non-functional necessities square measure the other demand than practical


necessities. These square measures the necessities that specify criteria
which will be wouldn’t to choose the operation of a system, instead of
specific behaviors. Non-functional necessities square measure within the
style of “system shall be “, associate degree overall property of the system
as a full or of a specific facet and not a particular operation.
The system’s overall properties remarkably mark the distinction between
whether or not the event project has succeeded or unsuccessful.

Non-functional necessities – are often divided into 2 main categories:

Execution qualities, like security and usefulness, that square measure


evident at the run time.
Evolution qualities, like liabilities, maintainability, flexibility, and
quantifiable, that square measure embodied within the static structure of
the code.

Non-functional necessities place restrictions on the merchandise being


developed, the event method, and specify external constraints that the
merchandise should meet. Our project qualifies all the criteria of functional
and non-functional accordingly and the system is up to mark performance
vise.
Here we need to take care of few more things before heading towards the
system. The most important feature of the electricity bill management
system application world is the application’s ease of usage .application will
easy to use if made while keeping in mind that the user need not think twice
about searching any feature.

Everything should be made distinctive by using the color combination such


that everything needed most frequently highlighted with focus colors. We
can use simple layouts like the card and grid layout etc. By varying color and
other UI combinations, many good intuitive interfaces can be made. Which
ultimately makes the interface easy to use for a long time.

Unlike ancient style wherever the goal is to form the thing or application
physically enticing, the goal of interface style is to form the user’s
interaction expertise as straightforward and intuitive as attainable – what’s
typically known as user-centered style. Where smart graphic/industrial style
is daring and eye-catching, smart interface style is commonly delicate and
invisible.

Keep things simple and consistent: –


Simple and Harmonic way making UI is very intuitive and needs to follow.
Make good use of typography: –

The typography is taken care very strictly as the need of the system.

Use color and contrast properly: –


Color combo of lite and dark is good way emphasize and done well in this
system.

Consider feedback messages: –


The feedback form is a very good way taking feedback of forms and
improving the system.

Simplified forms: –
The form is made simple to fill with the clean user interface
CONCLUSION

After all the hard work is done for the electricity bill management
system is here. It is software that helps the user to work with the
billing cycles, paying bills, managing different departments under
which employees are working, etc. This software reduces the amount
of manual data entry and gives greater efficiency.

The User Interface of it is very friendly and can be easily used by


anyone. It also decreases the amount of time taken to write details
and other modules.
BIBLIOGRAPHY

• lovelycoding.org
• freeprojectz.com
• Slideshare.net
• Stackoverflow.com
• github.com

You might also like