me xi bill document

83
Developed By the Students of NIIT-Nungambakkam (DIPLOMA IN JAVA TECHNOLOGIES) A.Birose Banu -R100030103759 Jeevitha.R -R100030101334 Padmavathy.J -R100030101406 Vasuki Devi.D -R100030101435 1

Upload: nagavarun-kumar

Post on 24-Mar-2015

1.134 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Me Xi Bill Document

Developed By the Students of NIIT-Nungambakkam

(DIPLOMA IN JAVA TECHNOLOGIES)

A.Birose Banu -R100030103759

Jeevitha.R -R100030101334

Padmavathy.J -R100030101406

Vasuki Devi.D -R100030101435

1

Page 2: Me Xi Bill Document

ABSTRACT

Mexibills Solutions Pvt. Ltd is an Online System which can help the customers by

providing a mechanism for paying bills online. Home page consists of Registration module,

Customer login module. In Registration module, where new user can register for their Bill

payment through online and it will be inserted into the database. Customer login checks the

authentication of the user and then allows the customer for online payment and also customer

can view their previous transaction records and status of the latest transaction. We have used

Java Server Pages as the presentation layer and Servlets as controller and entity bean,session

bean for model components and Derby as backend to build this application.

2

Page 3: Me Xi Bill Document

CERTIFICATE

This is to Certify that this report Title: Sky High Institute of Management developed by

Chippada Rekha, Jeevitha.R, Padmavathy.J, and Vasuki Devi.D in the partial fulfillment of the

course requirement at NIIT.

Coordinator : Mr.P.Sabari Balaji

Signature :

Date :

Organization : NIIT

Address : NIIT, Nungambakkan, Chennai-34

3

Page 4: Me Xi Bill Document

ACKNOWLEDGEMENT

The following deserves wholehearted thanks and I wish to acknowledge all of them

for direct and indirect contribution for the successful completion of this project any writing

venture, the personal and intimate associations of many persons may the single contributing for

the success of the project.

We express our sincere thanks to our faculty Mr.P.Sabari Balaji for co-operation of

our project.

4

Page 5: Me Xi Bill Document

SL. NO.

CONTENTS PAGE NO.

1 INTRODUCTION1.1 Existing System1.2 Proposed System

2 SYSTEM CONFIGURATION 2.1 Software Requirements 2.2 Hardware Requirements

3 SYSTEM ANALYSIS3.1 Registration Module3.2 Customer Login

4 SYSTEM DESIGN4.1Class Diagram4.2 Use Case Diagram4.3 Activity Diagram4.4 Sequence Diagram

5 DATABASE DESIGN

6 CODING IMPLEMENTATION

7 FUTURE ENHANCEMENTS

8 CONCLUSION

9 REFERENCES

5

Page 6: Me Xi Bill Document

INTRODUCTION:

Danniel Carton established Mexibills Solutions Pvt. Ltd. 12 years ago in Taxco,Mexico.Commencing with a focus on the bills collection business in Taxco,Mexibills Solutions Ltd.quickly broadened its collection services to other cities of Mexico.The Company outsources its bills collection service to various corporate in town.Its services ease the customers of the corporate by providing door-step collection of their bills.

1.1 EXISTING SYSTEM:

In the existing system,bills are collected through augmented collection channels that are spread in all cities of Mexico.Various cooperates send their collection list to those channels and then according to the location of the customers,collection executives are send by the company for collection of the due bills.This way cooperates are exempted from the back-end peocess of collecting the dues and hence they can concentrate on their main business.

Mexibills Solutions Pvt Ltd.satisfies the customer on behalf of the corporates by providing various services like, reminders for due-bills,settlement of erroneous bills,and bills collection at their door-step.As a result,collection requests are also increasing day by day.

Appointing extra human resources to meet the collection targets is affecting the profit margins of the business.Also,managing the data manually is a tedious process for the company.

1.2 ENVISIONED SYSTEM:

With spring business needs, the currnt system is facing a lot of problems.The human resource is falling short in order to meet the currnet targets.Also,various processes like appointing new collection executives , increasing remainder calls,increasing transport requirements to visit places of collection etc are adding up business operational cost.

The management of Mexibills Solutions Pvt. Ltd. Has decided to build an online system which can help the customers by providing a mechanism for paying bills onbline.

While developing the online billing system the following points need to be taken into considerations:

6

Page 7: Me Xi Bill Document

In the new system,customers need to first register themselves in order to use the services on the online billing system.After registering ,they are authorized to pay bills online.

The system should have a mechanism to authenticate credentials of the registered customers.This will ensure the security for making payments online.

The system should archieve all the bills with their up-to-date summary for the customer.

The payment mechanism has to be online and there should be a provision for accepting the credit card details.

7

Page 8: Me Xi Bill Document

SYSTEM CONFIGURATION

8

Page 9: Me Xi Bill Document

2 SYSTEM CONFIGUARATION

2.1 SOFTWARE REQUIREMENTS:

Operating System : Windows vista ultimate

Database : Derby

Web Technologies : HTML, JSP,Servlet,EJB

IDE : Net Beans IDE 6.0.1

Server Requirements : Sun Application Server

2.2 HARDWARE CONFIGURATION:

Hard Disk : 160 GB Hard Disk

Ram : 2 GB RAM

Processor : Intel Pentium II Processor

9

Page 10: Me Xi Bill Document

SYSTEM ANALYSIs

10

Page 11: Me Xi Bill Document

3. SYSTEM ANLYSIS:

The Mexibills Solutions Pvt. Ltd consists of following modules.

Registration Module Customer Login Module

3.1 REGISTRATION MODULE:

Registration Module will enable the new customer to register for their online bill payments..It consists of a form. you have to fill your Personal Infromation.You should remember the user name and password entered by this form.

3.2 CUSTOMER LOGIN MODULE: Customer login checks the authentication of the user and then allows the customer for online payment and also customer can view their previous transaction records and status of the latest transaction.

11

Page 12: Me Xi Bill Document

Home Page

12

Page 13: Me Xi Bill Document

About Us

13

Page 14: Me Xi Bill Document

Contact US

14

Page 15: Me Xi Bill Document

Sign Up

15

Page 16: Me Xi Bill Document

Customer Logion

16

Page 17: Me Xi Bill Document

Customer View Page

17

Page 18: Me Xi Bill Document

View Catagory

18

Page 19: Me Xi Bill Document

Bill Type

19

Page 20: Me Xi Bill Document

Customer Details

20

Page 21: Me Xi Bill Document

Payment Details

21

Page 22: Me Xi Bill Document

Bank Details

22

Page 23: Me Xi Bill Document

Payment Confirm

23

Page 24: Me Xi Bill Document

View Inbox

24

Page 25: Me Xi Bill Document

View Message

25

Page 26: Me Xi Bill Document

Delete Message

26

Page 27: Me Xi Bill Document

SYSTEM DESIGN

27

Page 28: Me Xi Bill Document

CLASS DIAGRAM

28

Page 29: Me Xi Bill Document

29

Page 30: Me Xi Bill Document

USECASE DIAGRAM

30

Page 31: Me Xi Bill Document

Use Case Diagram For User

31

Page 32: Me Xi Bill Document

E-R DIAGRAM

32

Page 33: Me Xi Bill Document

E-R DIAGRAM

Database Name: MexiBills

33

User Login

ID

UserName

Password

PhoneNoAddress

EmailAnswer

Question

ID CellNo

NetworkPayDate

UserName

Amount

Status

CellDetails

UserName

SubjectBody

Password

IDMessge

Page 34: Me Xi Bill Document

ACTIVITY DIAGRAM

34

Page 35: Me Xi Bill Document

35

Page 36: Me Xi Bill Document

SEQUENCE DIAGRAM

36

Page 37: Me Xi Bill Document

37

Page 38: Me Xi Bill Document

DATABASE DESIGN

38

Page 39: Me Xi Bill Document

5.1 LIST OF TABLES

Customer Sign Up Table:

Field Name Data Type Description

Id String Primary key

User Name String -

Pass Word String -

Address String -

Phone No Integer -

Email String -

Question String -

Answer String -

Customer Cell details Table:

Field Name Data Type DescriptionId String Primary keyCustomer Name String -Cell No Integer -Network String -Amount Double -Status String -Payment Date String -

39

Page 40: Me Xi Bill Document

Message Table:

Field Name Data Type DescriptionId String Primary keyCustomer Name String -Password String -Subject String -Body String -Date String -

40

Page 41: Me Xi Bill Document

CODING IMPLEMENTATION

41

Page 42: Me Xi Bill Document

CellDetails.java (Entity Class):

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package Model

import java.io.Serializable;

import javax.persistence.Entity;

import javax.persistence.GeneratedValue;

import javax.persistence.GenerationType;

import javax.persistence.Id;

/**

*

* @author Satish

*/

@Entity

public class CellDetails implements Serializable {

private static final long serialVersionUID = 1L;

42

Page 43: Me Xi Bill Document

private String id;

private String cname;

private String cellno;

private String network;

private String paydate1;

private double amount;

private String status;

public void setId(String id) {

this.id = id;

}

@Id

@GeneratedValue(strategy = GenerationType.AUTO)

public String getId() {

return id;

}

@Override

public int hashCode() {

int hash = 0;

hash += (getId() != null ? getId().hashCode() : 0);

return hash;

43

Page 44: Me Xi Bill Document

}

@Override

public boolean equals(Object object) {

// TODO: Warning - this method won't work in the case the id fields are not set

if (!(object instanceof CellDetails)) {

return false;

}

CellDetails other = (CellDetails) object;

if ((this.getId() == null && other.getId() != null) || (this.getId() != null && !this.id.equals(other.id))) {

return false;

}

return true;

}

@Override

public String toString() {

return "Controle.CellDetails[id=" + getId() + "]";

}

public String getCname() {

return cname;

}

44

Page 45: Me Xi Bill Document

public void setCname(String cname) {

this.cname = cname;

}

public String getCellno() {

return cellno;

}

public void setCellno(String cellno) {

this.cellno = cellno;

}

public String getNetwork() {

return network;

}

public void setNetwork(String network) {

this.network = network;

}

public double getAmount() {

return amount;

}

45

Page 46: Me Xi Bill Document

public void setAmount(double amount) {

this.amount = amount;

}

public String getStatus() {

return status;

}

public void setStatus(String status) {

this.status = status;

}

public String getPaydate1() {

return paydate1;

}

public void setPaydate1(String paydate1) {

this.paydate1 = paydate1;

}

}

46

Page 47: Me Xi Bill Document

CellDetailsFacadeRemote.java( Session Bean Interface):

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package Controle;

import java.util.List;

import javax.ejb.Remote;

/**

*

* @author Satish

*/

@Remote

public interface CellDetailsFacadeRemote {

void create(CellDetails cellDetails);

void edit(CellDetails cellDetails);

void remove(CellDetails cellDetails);

47

Page 48: Me Xi Bill Document

public CellDetails find(String pn,String net);

List<CellDetails> findAll();

}

CellDetailsFacade.java(Session Bean):

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package Model;

import java.util.List;

import javax.ejb.Stateless;

import javax.persistence.EntityManager;

import javax.persistence.PersistenceContext;

/**

*

* @author Satish

*/

@Stateless

48

Page 49: Me Xi Bill Document

public class CellDetailsFacade implements CellDetailsFacadeRemote {

@PersistenceContext

private EntityManager em;

public void create(CellDetails cellDetails) {

em.persist(cellDetails);

}

public void edit(CellDetails cellDetails) {

em.merge(cellDetails);

}

public void remove(CellDetails cellDetails) {

em.remove(em.merge(cellDetails));

}

public CellDetails find(String pn,String net)

{

String sql="select object(o) from CellDetails as o where o.cellno = '"+pn+"' and o.network ='"+net+"' and o.status = 'unpaid'";

return (CellDetails)em.createQuery(sql).getSingleResult();

}

public List<CellDetails> findAll() {

return em.createQuery("select object(o) from CellDetails as o").getResultList();}}

49

Page 50: Me Xi Bill Document

Message.java (Entity Class):

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package Model;

import java.io.Serializable;

import javax.persistence.Entity;

import javax.persistence.GeneratedValue;

import javax.persistence.GenerationType;

import javax.persistence.Id;

/**

*

* @author Satish

*/

@Entity

public class Message implements Serializable {

private static final long serialVersionUID = 1L;

50

Page 51: Me Xi Bill Document

private Integer id;

private String user1;

private String pass;

private String sub;

private String body;

private String msgDate;

public void setId(Integer id) {

this.id = id;

}

@Id

@GeneratedValue(strategy = GenerationType.AUTO)

public Integer getId() {

return id;

}

@Override

public int hashCode() {

int hash = 0;

hash += (getId() != null ? getId().hashCode() : 0);

return hash;

}

@Override

51

Page 52: Me Xi Bill Document

public boolean equals(Object object) {

// TODO: Warning - this method won't work in the case the id fields are not set

if (!(object instanceof Message)) {

return false;

}

Message other = (Message) object;

if ((this.getId() == null && other.getId() != null) || (this.getId() != null && !this.id.equals(other.id))) {

return false;

}

return true;

}

@Override

public String toString() {

return "Controle.Message[id=" + getId() + "]";

}

public String getUser1() {

return user1;

}

public void setUser1(String user1) {

this.user1 = user1;

}

52

Page 53: Me Xi Bill Document

public String getPass() {

return pass;

}

public void setPass(String pass) {

this.pass = pass;

}

public String getSub() {

return sub;

}

public void setSub(String sub) {

this.sub = sub;

}

public String getBody() {

return body;

}

public void setBody(String body) {

this.body = body;

}

53

Page 54: Me Xi Bill Document

public String getMsgDate() {

return msgDate;

}

public void setMsgDate(String msgDate) {

this.msgDate = msgDate;

}

}

MessageFacadeRemote.java(Session Bean Interface):

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package Controle;

import java.util.List;

import javax.ejb.Remote;

54

Page 55: Me Xi Bill Document

/**

*

* @author Satish

*/

@Remote

public interface MessageFacadeRemote {

public void addmess(Integer id,String sub,String body,String user,String pass,String dd);

public List<Message> find(String user,String pass);

public void deleteMes(Integer id);

public Message findMes(Integer id);

public Integer findAll();

}

MessageFacade.java(Session Bean):

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package Controle;

55

Page 56: Me Xi Bill Document

import java.util.Date;

import java.util.List;

import javax.ejb.Stateless;

import javax.persistence.EntityManager;

import javax.persistence.PersistenceContext;

/**

*

* @author Satish

*/

@Stateless

public class MessageFacade implements MessageFacadeRemote {

@PersistenceContext

private EntityManager em;

public void addmess(Integer id,String sub,String body,String user,String pass,String dd)

{

Message msg=new Message();

msg.setId(id);

msg.setSub(sub);

msg.setBody(body);

msg.setUser1(user);

msg.setPass(pass);

msg.setMsgDate(dd);

em.persist(msg);

56

Page 57: Me Xi Bill Document

}

public List<Message> find(String user,String pass)

{

String sql="select Object(o) from Message as o where o.user1 ='"+user+"' and o.pass = '"+pass+"'";

return em.createQuery(sql).getResultList();

}

public void deleteMes(Integer id)

{

String sql="delete from Message as o where o.id ="+id;

int i=em.createQuery(sql).executeUpdate();

}

public Message findMes(Integer id)

{

String sql="select Object(o) from Message as o where o.id ="+id;

return (Message)em.createQuery(sql).getSingleResult();

}

public Integer findAll()

{

return (Integer)em.createQuery("select max(o.id) from Message as o").getSingleResult();

}}

57

Page 58: Me Xi Bill Document

UserLogin.java(Entity Class)

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package Model;;

import java.io.Serializable;

import javax.persistence.Entity;

import javax.persistence.GeneratedValue;

import javax.persistence.GenerationType;

import javax.persistence.Id;

/**

*

* @author Satish

*/

@Entity

public class UserLogin implements Serializable {

private static final long serialVersionUID = 1L;

private String id;

private String pass;

private String name;

58

Page 59: Me Xi Bill Document

private String adds;

private String phno;

private String email;

private String ques;

private String ans;

public void setId(String id) {

this.id = id;

}

@Id

@GeneratedValue(strategy = GenerationType.AUTO)

public String getId() {

return id;

}

public String getPass() {

return pass;

}

public void setPass(String pass) {

this.pass = pass;

}

59

Page 60: Me Xi Bill Document

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getAdds() {

return adds;

}

public void setAdds(String adds) {

this.adds = adds;

}

public String getPhno() {

return phno;

}

public void setPhno(String phno) {

this.phno = phno;

}

public String getEmail() {

60

Page 61: Me Xi Bill Document

return email;

}

public void setEmail(String email) {

this.email = email;

}

public String getQues() {

return ques;

}

public void setQues(String ques) {

this.ques = ques;

}

public String getAns() {

return ans;

}

public void setAns(String ans) {

this.ans = ans;

}

}

61

Page 62: Me Xi Bill Document

UserLoginFacadeRemote.java(Session Bean Interface):

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package Model;

import java.util.List;

import javax.ejb.Remote;

/**

*

* @author Satish

*/

@Remote

public interface UserLoginFacadeRemote {

public UserLogin find(String id,String qes,String ans);

public UserLogin findSign(String user,String pass);

List<UserLogin> findAll();

public void addSignUp(java.lang.String user, java.lang.String pass, java.lang.String name, java.lang.String add, java.lang.String pn, java.lang.String email, java.lang.String ques, java.lang.String ans);}

62

Page 63: Me Xi Bill Document

UserLoginFacade.java(Session Bean)

/*

* To change this template, choose Tools | Templates

* and open the template in the editor.

*/

package Model;

import java.util.List;

import javax.ejb.Stateless;

import javax.persistence.EntityManager;

import javax.persistence.PersistenceContext;

/**

*

* @author Satish

*/

@Stateless

public class UserLoginFacade implements UserLoginFacadeRemote {

@PersistenceContext

private EntityManager em;

UserLogin cm=new UserLogin();

63

Page 64: Me Xi Bill Document

public void addSignUp(String user,String pass,String name,String add,String pn,String email,String ques,String ans)

{

cm.setId(user);

cm.setPass(pass);

cm.setName(name);

cm.setAdds(add);

cm.setPhno(pn);

cm.setEmail(email);

cm.setQues(ques);

cm.setAns(ans);

em.persist(cm);

}

public UserLogin find(String id,String qes,String ans)

{

String sql1="select Object(o) from UserLogin as o where o.id='"+id+"' and o.ques = '"+qes+"' and o.ans = '"+ans+"'";

return (UserLogin)em.createQuery(sql1).getSingleResult();

}

public UserLogin findSign(String user,String pass)

{

64

Page 65: Me Xi Bill Document

String sql1="select Object(o) from UserLogin as o where o.id='"+user+"' and o.pass='"+pass+"'";

return (UserLogin)em.createQuery(sql1).getSingleResult();

}

public List<UserLogin> findAll() {

return em.createQuery("select object(o) from UserLogin as o").getResultList();

}

}

65

Page 66: Me Xi Bill Document

FUTURE ENHANCEMENTS

66

Page 67: Me Xi Bill Document

FUTURE ENHANCEMENTS

Can be upgraded to an enterprise java bean version.

Can implement extensive security with role management.

Can have stable relational database language with powerful query capabilities.

Interceptors and filters can be implemented to improve performance.

67

Page 68: Me Xi Bill Document

CONCLUSION

68

Page 69: Me Xi Bill Document

CONCLUSION

This Project MexiBills Solutions Pvt. Ltd. has taken effective steps to resolve the

drawbacks of the existing system. In this proposed system, New Customer can register their Bill

payment through online. By this System Customer can pay their Bill through online using credit

card or debit card. It is possible for the Customer to view their previous transaction . Customers

can able to view the payment detail..

69

Page 70: Me Xi Bill Document

REFERENCES

70

Page 71: Me Xi Bill Document

REFERENCES

Web Component Development With Servlet and JSP Technologies(SL-314)

JAVA-2 Complete-Reference

By Patrice Norton & Herbert Child Publisher: Tata McGraw Hill

Java Server Pages

By James good

Core Servlet and Java Server Pages

By Marty Hall, Larry Brown.

WEBSITES

http://www.java.sun.com/j2ee/tutorial/1_3-fcs/doc/servlets.html .

http://roseindia.net/struts.html .

http://www.netbeans.org/kb/60/web/tutorial-webapps.html .

71

Page 72: Me Xi Bill Document

72