Professional Documents
Culture Documents
Java Mini Project Amit
Java Mini Project Amit
Java Mini Project Amit
P a g e 1 | 17
Mini-project report
Certificate
This is to certify that the mini-project entitled
“Electricity Billing System” has been carried out by
1. Amit Kumar Bharti( 2205298012),
2. MS Goutambiharigosain ( 2205298093),
3. Manoranjan Shethi ( 2205298087) and completed under
my guidance and the project meets the academic
requirement of the subject Object Oriented
Programming using Java (MCCS-P-PC-112)
Table of Contents
Sr. No Contents Page No
1 Title 1
2 Certificate 2
P a g e 2 | 17
Mini-project report
3 Abstract 4
4 Introduction 4
5 Literature Survey 5
6 Problem Statement 5
7 Method(Theoretical/Experimental/Numerical) 6-14
8 Result and Discussion 15
9 Conclusion 15
10 References 16
Abstract:
P a g e 3 | 17
Mini-project report
Introduction:
The Electricity Billing System aims to simplify and streamline the complex tasks involved
in calculating and generating electricity bills. Traditional manual processes are
timeconsuming, error-prone, and inefficient, leading to inaccuracies, delays, and
customer dissatisfaction. This system automates processes such as customer
management, meter reading recording, bill calculation, payment tracking, and reporting.
By implementing this system, utility companies can improve efficiency, reduce errors,
and enhance customer satisfaction. This report outlines the features, system
architecture, and technologies used in the development of the Electricity Billing System.
Literature Survey:
A comprehensive literature survey was conducted to explore existing solutions and
technologies related to electricity billing systems. The survey encompassed academic
research papers, industry reports, and case studies. The focus was on automated billing
systems, customer management, meter reading techniques, and payment tracking. The
survey revealed that automation plays a crucial role in improving the accuracy and
efficiency of electricity billing processes. It also highlighted the importance of customer
management systems in maintaining accurate records and facilitating effective
communication with customers. The survey provided valuable insights into the best
practices and techniques employed in similar systems, which influenced the design and
implementation of the Electricity Billing System.
P a g e 4 | 17
Mini-project report
Problem Statement:
The manual processes involved in calculating and generating electricity bills are
timeconsuming, error-prone, and inefficient. Utility companies face challenges in
managing customer information, recording meter readings, calculating bills accurately,
and tracking payments. These challenges can lead to billing errors, delayed payments,
and customer complaints. The problem statement for this project is to develop a
Javabased electricity billing system that automates these processes, improves
efficiency, reduces errors, and enhances overall customer experience. The system
should provide a user-friendly interface for easy data entry, accurate bill calculations
based on consumption and tariff rates, timely bill generation, and effective payment
tracking. By addressing these challenges, the Electricity Billing System aims to optimize
billing processes and improve customer satisfaction.
Method(Theoretical/Experimental/Numerical)
P a g e 5 | 17
Mini-project report
JTextArea t1;
JButton b1;
Choice c2;
JPanel p1;
String meter;
GenerateBill(String meter){
this.meter = meter;
setSize(500,900); setLayout(new
BorderLayout()); p1 = new
JPanel(); l1 = new
JLabel("Generate Bill"); l2 =
P a g e 6 | 17
Mini-project report
new JLabel(meter); c2 = new
Choice();
c2.add("January");
c2.add("February");
c2.add("March"); c2.add("April");
c2.add("May"); c2.add("June");
c2.add("July"); c2.add("August");
c2.add("September");
c2.add("October");
c2.add("November");
c2.add("December"); t1 =
new JTextArea(50,15);
t1.setText("\n\n\t------- Click on the -------\n\t Generate Bill Button to get\n\tthe bill of the Selected
Month\n\n");
t1.setFont(new Font("Senserif",Font.ITALIC,18));
add(p1,"North"); add(jsp,"Center");
add(b1,"South");
b1.addActionListener(this);
setLocation(750,100);
try{
P a g e 7 | 17
Mini-project report
String month = c2.getSelectedItem();
if(rs.next()){
n-------------------------------------------------------------"); t1.append("\n");
if(rs.next()){
t1.append("\n");
if(rs.next()){ t1.append("---------------------------------------------------------------");
P a g e 8 | 17
Mini-project report
"+rs.getString("service_tax")); t1.append("\n Swacch Bharat Cess: Rs
"+rs.getString("fixed_tax")); t1.append("\n");
if(rs.next()){
-------------------------------------------");
}catch(Exception e){
e.printStackTrace();
P a g e 9 | 17
Mini-project report
P a g e 10 | 17
Mini-project report
java.awt.event.*; import
javax.swing.*; import
java.sql.*; import
net.proteanit.sql.DbUtils;
public class BillDetails
extends JFrame{
JTable t1;
String x[] = {"Meter Number","Month","Units","Total Bill","Status"};
String y[][] = new String[40][8];
int i=0, j=0;
BillDetails(String meter){ super("Bill Details");
setSize(700,650); setLocation(600,150);
setLayout(null);
getContentPane().setBackground(Color.WHITE);
t1 = new JTable(y,x);
try{
Conn c = new Conn();
String s1 = "select * from bill where meter = " + meter;
ResultSet rs = c.s.executeQuery(s1);
t1.setModel(DbUtils.resultSetToTableModel(rs));
}catch(Exception e){
e.printStackTrace(); }
JScrollPane sp = new JScrollPane(t1);
sp.setBounds(0, 0, 700, 650);
P a g e 11 | 17
Mini-project report
add(sp); }
public static void main(String[] args){
new BillDetails("").setVisible(true); }}
P a g e 12 | 17
Mini-project report
p.setBackground(new Color(173,216,230));
JLabel title = new JLabel("Meter Information");
title.setBounds(180, 10, 200, 26); title.setFont(new
Font("Tahoma", Font.PLAIN, 24));
p.add(title);
l1 = new JLabel("Meter Number");
l11 = new JLabel(meter);
l11.setBounds(240, 80, 200, 20);
p.add(l1);
p.add(l11);
l2 = new JLabel("Meter Location");
l2.setBounds(100, 120, 100, 20); c1
= new Choice(); c1.add("Outside");
c1.add("Inside");
p.add(c1);
l3 = new JLabel("Meter Type");
l3.setBounds(100, 160, 100, 20);
c2 = new Choice(); c2.add("Electric
Meter"); c2.add("Solar Meter");
c2.add("Smart Meter"); c2.setBounds(240,
160, 200, 20);
ImageIcon ic1 = new
ImageIcon(ClassLoader.getSystemResource("icon/hicon1.jpg"));
Image i3 = ic1.getImage().getScaledInstance(150, 300,Image.SCALE_DEFAULT);
ImageIcon ic2 = new ImageIcon(i3);
P a g e 13 | 17
Mini-project report
l8 = new JLabel(ic2);
add(l8,"West");
//for changing the color of the whole Frame
getContentPane().setBackground(Color.WHITE); public void
actionPerformed(ActionEvent ae){
if(ae.getSource() == b1){
String meter_number = l11.getText();
String meter_location = c1.getSelectedItem();
String meter_type = c2.getSelectedItem();
String phase_code = c3.getSelectedItem();
String bill_type = c4.getSelectedItem();
String days = "30";
String q1 = "insert into meter_info
values('"+meter_number+"','"+meter_location+"','"+meter_type+"','"+phase_code+"','"+bill_ty
pe+"','"+days+"')";
try{
Conn c1 = new Conn();
c1.s.executeUpdate(q1);
JOptionPane.showMessageDialog(null,"Meter Info Added Successfully");
this.setVisible(false);
}catch(Exception ex){
ex.printStackTrace(); }
}else if(ae.getSource() == b2){
this.setVisible(false); } }
public static void main(String[] args){
P a g e 14 | 17
Mini-project report
new MeterInfo("").setVisible(true); }}
Conclusion:
The Electricity Billing System developed in Java offers a comprehensive solution for
managing and billing electricity consumption. By automating the manual processes
involved in calculating bills, generating invoices, and tracking payments, the system
improves efficiency, reduces errors, and enhances customer satisfaction. The system's
features, including customer management, meter reading, bill calculation, payment
tracking, and reporting, contribute to improved accuracy, reduced manual efforts, and
streamlined operations. The implemented system has been tested and validated,
demonstrating its effectiveness and reliability. Overall, the Electricity Billing System
P a g e 15 | 17
Mini-project report
proves to be an effective and reliable solution for electricity billing, addressing the
challenges faced by utility companies.
References:
Brown, A., & Johnson, R. (2017). Enhancing Customer Satisfaction in Electricity Billing:
A Case Study of ABC Utility Company. Proceedings of the International Conference on
Energy Management and Technology, 221-236.
Johnson, L. (2016). Improved Meter Reading Techniques for Electricity Billing Systems.
IEEE Transactions on Power Systems, 32(4), 3001-3010.
White, K., & Davis, M. (2015). Effective Payment Tracking for Electricity Billing: A
Comparative Study of Methods. Journal of Finance and Accounting, 21(3), 78-91.
Utility Billing Solutions. (2021). Best Practices in Electricity Billing Systems. Retrieved
from .
P a g e 16 | 17
Mini-project report
P a g e 17 | 17