From c22ab0f4cb2ee70c39ed1502b97495c7aceb091b Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 11:00:22 +0530 Subject: [PATCH 01/20] Add files via upload --- README.md | 9 +++- build.xml | 73 +++++++++++++++++++++++++++++++++ derby.log | 115 ++++++++++++++++++++++++++++++++++++++++++++++++++++ manifest.mf | 3 ++ 4 files changed, 199 insertions(+), 1 deletion(-) create mode 100644 build.xml create mode 100644 derby.log create mode 100644 manifest.mf diff --git a/README.md b/README.md index 20d8fec..49c0269 100644 --- a/README.md +++ b/README.md @@ -1 +1,8 @@ -# OHT2 \ No newline at end of file +# Fees-Management-System +1. Engineered a dynamic website using Java and NetBeans for seamless record management. +2. Deployed features like fee addition, record search, course viewing/editing, and report generation. +3. Enable fee addition with Java, offering PDF receipt printing, and Executed SQL for efficient data storage and retrieval, allowing easy post-saving information editing. +4. The developed CRUD application will offer a robust and user-friendly platform for managing data records using Java programming languages integrated with MySQL database. Users will be able to perform CRUD operations efficiently, including entering, editing, and deleting data records, thereby enhancing data management capabilities. +5. The application will contribute to improved data organization, accessibility, and reliability, ultimately facilitating effective decision-making and enhancing productivity. +6. Additionally, the integration of security measures will ensure the confidentiality and integrity of the data stored in the MySQL database, safeguarding it against potential security threats. + diff --git a/build.xml b/build.xml new file mode 100644 index 0000000..b7cea42 --- /dev/null +++ b/build.xml @@ -0,0 +1,73 @@ + + + + + + + + + + + Builds, tests, and runs the project Fees_Managment_System. + + + diff --git a/derby.log b/derby.log new file mode 100644 index 0000000..1b6bf35 --- /dev/null +++ b/derby.log @@ -0,0 +1,115 @@ +Sun Jul 23 19:22:08 IST 2023 Thread[#25,AWT-EventQueue-0,6,main] Cleanup action starting +java.sql.SQLException: XJ004.C : [0] Fees_Managment + at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(SQLExceptionFactory.java:115) + at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(SQLExceptionFactory.java:141) + at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Util.java:225) + at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Util.java:220) + at org.apache.derby.impl.jdbc.EmbedConnection.newSQLException(EmbedConnection.java:3208) + at org.apache.derby.impl.jdbc.EmbedConnection.handleDBNotFound(EmbedConnection.java:767) + at org.apache.derby.impl.jdbc.EmbedConnection.(EmbedConnection.java:437) + at org.apache.derby.iapi.jdbc.InternalDriver.getNewEmbedConnection(InternalDriver.java:630) + at org.apache.derby.iapi.jdbc.InternalDriver.connect(InternalDriver.java:295) + at org.apache.derby.iapi.jdbc.InternalDriver.connect(InternalDriver.java:922) + at org.apache.derby.iapi.jdbc.AutoloadedDriver.connect(AutoloadedDriver.java:132) + at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:683) + at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:230) + at Sign_Up_form.insertDetails(Sign_Up_form.java:121) + at Sign_Up_form.btn_signUpActionPerformed(Sign_Up_form.java:422) + at Sign_Up_form$4.actionPerformed(Sign_Up_form.java:261) + at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972) + at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2313) + at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405) + at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262) + at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279) + at java.desktop/java.awt.Component.processMouseEvent(Component.java:6620) + at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3398) + at java.desktop/java.awt.Component.processEvent(Component.java:6385) + at java.desktop/java.awt.Container.processEvent(Container.java:2266) + at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4995) + at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324) + at java.desktop/java.awt.Component.dispatchEvent(Component.java:4827) + at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948) + at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4575) + at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516) + at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310) + at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780) + at java.desktop/java.awt.Component.dispatchEvent(Component.java:4827) + at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:775) + at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720) + at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714) + at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) + at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) + at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97) + at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:747) + at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) + at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) + at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) + at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:744) + at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) + at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) + at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) + at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) + at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) + at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) +Caused by: ERROR XJ004: XJ004.C : [0] Fees_Managment + at org.apache.derby.shared.common.error.StandardException.newException(StandardException.java:299) + at org.apache.derby.impl.jdbc.SQLExceptionFactory.wrapArgsForTransportAcrossDRDA(SQLExceptionFactory.java:170) + at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(SQLExceptionFactory.java:75) + ... 50 more +============= begin nested exception, level (1) =========== +ERROR XJ004: XJ004.C : [0] Fees_Managment + at org.apache.derby.shared.common.error.StandardException.newException(StandardException.java:299) + at org.apache.derby.impl.jdbc.SQLExceptionFactory.wrapArgsForTransportAcrossDRDA(SQLExceptionFactory.java:170) + at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(SQLExceptionFactory.java:75) + at org.apache.derby.impl.jdbc.SQLExceptionFactory.getSQLException(SQLExceptionFactory.java:141) + at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Util.java:225) + at org.apache.derby.impl.jdbc.Util.generateCsSQLException(Util.java:220) + at org.apache.derby.impl.jdbc.EmbedConnection.newSQLException(EmbedConnection.java:3208) + at org.apache.derby.impl.jdbc.EmbedConnection.handleDBNotFound(EmbedConnection.java:767) + at org.apache.derby.impl.jdbc.EmbedConnection.(EmbedConnection.java:437) + at org.apache.derby.iapi.jdbc.InternalDriver.getNewEmbedConnection(InternalDriver.java:630) + at org.apache.derby.iapi.jdbc.InternalDriver.connect(InternalDriver.java:295) + at org.apache.derby.iapi.jdbc.InternalDriver.connect(InternalDriver.java:922) + at org.apache.derby.iapi.jdbc.AutoloadedDriver.connect(AutoloadedDriver.java:132) + at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:683) + at java.sql/java.sql.DriverManager.getConnection(DriverManager.java:230) + at Sign_Up_form.insertDetails(Sign_Up_form.java:121) + at Sign_Up_form.btn_signUpActionPerformed(Sign_Up_form.java:422) + at Sign_Up_form$4.actionPerformed(Sign_Up_form.java:261) + at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1972) + at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2313) + at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405) + at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262) + at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279) + at java.desktop/java.awt.Component.processMouseEvent(Component.java:6620) + at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3398) + at java.desktop/java.awt.Component.processEvent(Component.java:6385) + at java.desktop/java.awt.Container.processEvent(Container.java:2266) + at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4995) + at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324) + at java.desktop/java.awt.Component.dispatchEvent(Component.java:4827) + at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948) + at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4575) + at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516) + at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310) + at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780) + at java.desktop/java.awt.Component.dispatchEvent(Component.java:4827) + at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:775) + at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:720) + at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:714) + at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) + at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) + at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97) + at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:747) + at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745) + at java.base/java.security.AccessController.doPrivileged(AccessController.java:399) + at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86) + at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:744) + at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203) + at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124) + at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113) + at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109) + at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) + at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90) +============= end nested exception, level (1) =========== +Cleanup action completed diff --git a/manifest.mf b/manifest.mf new file mode 100644 index 0000000..1574df4 --- /dev/null +++ b/manifest.mf @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +X-COMMENT: Main-Class will be added automatically by build + From 9ad4be85fc5467b42599ea051d330e978461e29f Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 11:01:00 +0530 Subject: [PATCH 02/20] Create t1 --- test/t1 | 1 + 1 file changed, 1 insertion(+) create mode 100644 test/t1 diff --git a/test/t1 b/test/t1 new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/test/t1 @@ -0,0 +1 @@ + From 18fa10ad9d9b2f3731be734bd6c5453d2eec8f64 Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 11:03:34 +0530 Subject: [PATCH 03/20] Create t1 --- src/fees_management_system/t1 | 1 + 1 file changed, 1 insertion(+) create mode 100644 src/fees_management_system/t1 diff --git a/src/fees_management_system/t1 b/src/fees_management_system/t1 new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/src/fees_management_system/t1 @@ -0,0 +1 @@ + From f129c31f562501832d5bac77439be80875d06e56 Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 11:04:29 +0530 Subject: [PATCH 04/20] Add files via upload --- src/fees_management_system/EditCourse.form | 605 ++++++++++ src/fees_management_system/EditCourse.java | 648 +++++++++++ .../Fees_Managment_Syatem.java | 20 + .../GenerateReport.form | 738 ++++++++++++ .../GenerateReport.java | 692 +++++++++++ src/fees_management_system/HomePage.form | 638 +++++++++++ src/fees_management_system/HomePage.java | 705 ++++++++++++ src/fees_management_system/Login.form | 243 ++++ src/fees_management_system/Login.java | 242 ++++ .../NumberToWordsConverter.java | 67 ++ src/fees_management_system/SearchRecords.form | 522 +++++++++ src/fees_management_system/SearchRecords.java | 493 ++++++++ src/fees_management_system/Sign_Up_form.form | 396 +++++++ src/fees_management_system/Sign_Up_form.java | 515 +++++++++ .../UpdateFeesDetails.form | 954 ++++++++++++++++ .../UpdateFeesDetails.java | 848 ++++++++++++++ .../ViewAllRecords.form | 502 ++++++++ .../ViewAllRecords.java | 458 ++++++++ src/fees_management_system/addFees.form | 969 ++++++++++++++++ src/fees_management_system/addFees.java | 878 ++++++++++++++ src/fees_management_system/copyRightPage.form | 152 +++ src/fees_management_system/copyRightPage.java | 143 +++ src/fees_management_system/printReceipt.form | 1015 +++++++++++++++++ src/fees_management_system/printReceipt.java | 765 +++++++++++++ 24 files changed, 13208 insertions(+) create mode 100644 src/fees_management_system/EditCourse.form create mode 100644 src/fees_management_system/EditCourse.java create mode 100644 src/fees_management_system/Fees_Managment_Syatem.java create mode 100644 src/fees_management_system/GenerateReport.form create mode 100644 src/fees_management_system/GenerateReport.java create mode 100644 src/fees_management_system/HomePage.form create mode 100644 src/fees_management_system/HomePage.java create mode 100644 src/fees_management_system/Login.form create mode 100644 src/fees_management_system/Login.java create mode 100644 src/fees_management_system/NumberToWordsConverter.java create mode 100644 src/fees_management_system/SearchRecords.form create mode 100644 src/fees_management_system/SearchRecords.java create mode 100644 src/fees_management_system/Sign_Up_form.form create mode 100644 src/fees_management_system/Sign_Up_form.java create mode 100644 src/fees_management_system/UpdateFeesDetails.form create mode 100644 src/fees_management_system/UpdateFeesDetails.java create mode 100644 src/fees_management_system/ViewAllRecords.form create mode 100644 src/fees_management_system/ViewAllRecords.java create mode 100644 src/fees_management_system/addFees.form create mode 100644 src/fees_management_system/addFees.java create mode 100644 src/fees_management_system/copyRightPage.form create mode 100644 src/fees_management_system/copyRightPage.java create mode 100644 src/fees_management_system/printReceipt.form create mode 100644 src/fees_management_system/printReceipt.java diff --git a/src/fees_management_system/EditCourse.form b/src/fees_management_system/EditCourse.form new file mode 100644 index 0000000..439f43e --- /dev/null +++ b/src/fees_management_system/EditCourse.form @@ -0,0 +1,605 @@ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + + + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + </TableColumnModel> + </Property> + <Property name="tableHeader" type="javax.swing.table.JTableHeader" editor="org.netbeans.modules.form.editors2.JTableHeaderEditor"> + <TableHeader reorderingAllowed="true" resizingAllowed="true"/> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="tblCourseDataMouseClicked"/> + <EventHandler event="mouseReleased" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="tblCourseDataMouseReleased"/> + </Events> + </Component> + </SubComponents> + </Container> + <Component class="javax.swing.JTextField" name="txtCoursePrice"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="130" y="300" width="190" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtCourseId"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="130" y="200" width="190" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtCourseName"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="130" y="250" width="190" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblCourseName"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="14" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Course Name :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="250" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblCoursePrice"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="14" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Course Price :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="300" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblCourseId"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="14" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Course Id :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="200" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JButton" name="btnUpdate"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="UPDATE"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnUpdateActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="120" y="380" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JButton" name="btnDelete"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="DELETE"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnDeleteActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="240" y="380" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JButton" name="btnAdd"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="ADD"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnAddActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="380" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblHeading"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="b5" green="89" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="Edit Course Details"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="420" y="20" width="210" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="jTextField1"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="b5" green="89" red="0" type="rgb"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="b5" green="89" red="0" type="rgb"/> + </Property> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="jTextField1ActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="414" y="50" width="210" height="7"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblBack"> + <Properties> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/back1.png"/> + </Property> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="lblBackMouseClicked"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="20" width="40" height="30"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + </SubComponents> +</Form> diff --git a/src/fees_management_system/EditCourse.java b/src/fees_management_system/EditCourse.java new file mode 100644 index 0000000..8b59206 --- /dev/null +++ b/src/fees_management_system/EditCourse.java @@ -0,0 +1,648 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to edit this template + */ +package fees_managment_syatem; + +import java.awt.Color; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import javax.swing.JOptionPane; +import javax.swing.table.DefaultTableModel; +import javax.swing.table.TableModel; + +/** + * + * @author yash + */ +public class EditCourse extends javax.swing.JFrame { + + /** + * Creates new form EditCourse + */ + DefaultTableModel model; + public EditCourse() { + initComponents(); + setRecordsToTable(); + } +public void setRecordsToTable(){ + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + PreparedStatement pst=con.prepareStatement("select * from course"); + ResultSet rs=pst.executeQuery(); + while(rs.next()){ + String courseId=rs.getString("Id"); + String courseName=rs.getString("CNAME"); + String coursePrice=rs.getString("COST"); + Object[] obj={courseId,courseName,coursePrice}; + model=(DefaultTableModel)tblCourseData.getModel(); + model.addRow(obj); + } + }catch(Exception e){ + e.printStackTrace(); + } +} +public void clearTable(){ + DefaultTableModel model=(DefaultTableModel)tblCourseData.getModel(); + model.setRowCount(0); +} +public void addCourse(int id,String courseName,double coursePrice){ + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + PreparedStatement pst=con.prepareStatement("insert into course values(?,?,?)"); + pst.setInt(1,id); + pst.setString(2,courseName); + pst.setDouble(3,coursePrice); + int rowCount=pst.executeUpdate(); + if(rowCount==1){ + JOptionPane.showMessageDialog(this,"Course added successfully"); + clearTable(); + setRecordsToTable(); + }else{ + JOptionPane.showMessageDialog(this,"Course insertion failed"); + + } + }catch(Exception e){ + JOptionPane.showMessageDialog(this,"Course insertion failed"); + e.printStackTrace(); + } + } +public void update(int id,String courseName,double coursePrice){ + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + PreparedStatement pst=con.prepareStatement("UPDATE course SET CNAME=?, COST=? WHERE Id=?"); + pst.setString(1,courseName); + pst.setDouble(2,coursePrice); + pst.setInt(3,id); + int rowCount=pst.executeUpdate(); + if(rowCount==1){ + JOptionPane.showMessageDialog(this,"Course Update successfully"); + clearTable(); + setRecordsToTable(); + }else{ + JOptionPane.showMessageDialog(this,"Course Update failed"); + + } + }catch(Exception e){ + JOptionPane.showMessageDialog(this,"Course Update failed"); + e.printStackTrace(); + } +} +public void delete(int id){ + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + PreparedStatement pst=con.prepareStatement("delete from COURSE WHERE Id=?"); + pst.setInt(1,id); + int rowCount=pst.executeUpdate(); + if(rowCount==1){ + JOptionPane.showMessageDialog(this,"Course Delete successfully."); + clearTable(); + setRecordsToTable(); + }else{ + JOptionPane.showMessageDialog(this,"Course Delete failed."); + + } + }catch(Exception e){ + JOptionPane.showMessageDialog(this,"Course Delete failed"); + e.printStackTrace(); + } +} + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents + private void initComponents() { + + panelSideBar = new javax.swing.JPanel(); + panelLogOut = new javax.swing.JPanel(); + btnLogOut = new javax.swing.JLabel(); + panelHome = new javax.swing.JPanel(); + btnHome = new javax.swing.JLabel(); + panelSearchRecords = new javax.swing.JPanel(); + btnSearchRecords = new javax.swing.JLabel(); + panelEditCourse = new javax.swing.JPanel(); + btnEditCourse = new javax.swing.JLabel(); + panelCourseList = new javax.swing.JPanel(); + btnCourseList = new javax.swing.JLabel(); + panelViewAllRecords = new javax.swing.JPanel(); + btnViewAllRecords = new javax.swing.JLabel(); + panelBack = new javax.swing.JPanel(); + btnBack = new javax.swing.JLabel(); + jPanel1 = new javax.swing.JPanel(); + jScrollPane1 = new javax.swing.JScrollPane(); + tblCourseData = new javax.swing.JTable(); + txtCoursePrice = new javax.swing.JTextField(); + txtCourseId = new javax.swing.JTextField(); + txtCourseName = new javax.swing.JTextField(); + lblCourseName = new javax.swing.JLabel(); + lblCoursePrice = new javax.swing.JLabel(); + lblCourseId = new javax.swing.JLabel(); + btnUpdate = new javax.swing.JButton(); + btnDelete = new javax.swing.JButton(); + btnAdd = new javax.swing.JButton(); + lblHeading = new javax.swing.JLabel(); + jTextField1 = new javax.swing.JTextField(); + lblBack = new javax.swing.JLabel(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + panelSideBar.setBackground(new java.awt.Color(255, 102, 102)); + panelSideBar.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + panelLogOut.setBackground(new java.awt.Color(255, 102, 102)); + panelLogOut.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelLogOut.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnLogOut.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnLogOut.setForeground(new java.awt.Color(255, 255, 255)); + btnLogOut.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/exit.png"))); // NOI18N + btnLogOut.setText(" Logout"); + btnLogOut.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnLogOutMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnLogOutMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnLogOutMouseExited(evt); + } + }); + panelLogOut.add(btnLogOut, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 2, 260, 50)); + + panelSideBar.add(panelLogOut, new org.netbeans.lib.awtextra.AbsoluteConstraints(40, 530, 320, 50)); + + panelHome.setBackground(new java.awt.Color(255, 102, 102)); + panelHome.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelHome.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnHome.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnHome.setForeground(new java.awt.Color(255, 255, 255)); + btnHome.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/home.png"))); // NOI18N + btnHome.setText(" HOME"); + btnHome.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnHomeMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnHomeMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnHomeMouseExited(evt); + } + }); + panelHome.add(btnHome, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 310, 50)); + + panelSideBar.add(panelHome, new org.netbeans.lib.awtextra.AbsoluteConstraints(40, 60, 320, 50)); + + panelSearchRecords.setBackground(new java.awt.Color(255, 102, 102)); + panelSearchRecords.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelSearchRecords.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnSearchRecords.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnSearchRecords.setForeground(new java.awt.Color(255, 255, 255)); + btnSearchRecords.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/search2.png"))); // NOI18N + btnSearchRecords.setText(" Search Records"); + btnSearchRecords.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseExited(evt); + } + }); + panelSearchRecords.add(btnSearchRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 310, 60)); + + panelSideBar.add(panelSearchRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(40, 130, 320, 50)); + + panelEditCourse.setBackground(new java.awt.Color(255, 102, 102)); + panelEditCourse.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelEditCourse.setFont(new java.awt.Font("Segoe UI", 1, 24)); // NOI18N + panelEditCourse.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnEditCourse.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnEditCourse.setForeground(new java.awt.Color(255, 255, 255)); + btnEditCourse.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/edit2.png"))); // NOI18N + btnEditCourse.setText(" Edit Course"); + btnEditCourse.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnEditCourseMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnEditCourseMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnEditCourseMouseExited(evt); + } + }); + panelEditCourse.add(btnEditCourse, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 260, -1)); + + panelSideBar.add(panelEditCourse, new org.netbeans.lib.awtextra.AbsoluteConstraints(40, 210, 320, 50)); + + panelCourseList.setBackground(new java.awt.Color(255, 102, 102)); + panelCourseList.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelCourseList.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnCourseList.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnCourseList.setForeground(new java.awt.Color(255, 255, 255)); + btnCourseList.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/list.png"))); // NOI18N + btnCourseList.setText(" Course List"); + btnCourseList.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnCourseListMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnCourseListMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnCourseListMouseExited(evt); + } + }); + panelCourseList.add(btnCourseList, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, -10, 260, -1)); + + panelSideBar.add(panelCourseList, new org.netbeans.lib.awtextra.AbsoluteConstraints(40, 290, 320, 50)); + + panelViewAllRecords.setBackground(new java.awt.Color(255, 102, 102)); + panelViewAllRecords.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelViewAllRecords.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnViewAllRecords.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnViewAllRecords.setForeground(new java.awt.Color(255, 255, 255)); + btnViewAllRecords.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/view all record.png"))); // NOI18N + btnViewAllRecords.setText(" View All Records"); + btnViewAllRecords.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseExited(evt); + } + }); + panelViewAllRecords.add(btnViewAllRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 300, -1)); + + panelSideBar.add(panelViewAllRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(40, 370, 320, 50)); + + panelBack.setBackground(new java.awt.Color(255, 102, 102)); + panelBack.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelBack.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnBack.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnBack.setForeground(new java.awt.Color(255, 255, 255)); + btnBack.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/left-arrow.png"))); // NOI18N + btnBack.setText(" Back"); + btnBack.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnBackMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnBackMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnBackMouseExited(evt); + } + }); + panelBack.add(btnBack, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, -10, 260, -1)); + + panelSideBar.add(panelBack, new org.netbeans.lib.awtextra.AbsoluteConstraints(40, 450, 320, 50)); + + getContentPane().add(panelSideBar, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 390, 640)); + + jPanel1.setBackground(new java.awt.Color(255, 204, 204)); + jPanel1.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + tblCourseData.setModel(new javax.swing.table.DefaultTableModel( + new Object [][] { + + }, + new String [] { + "CourseId", "CourseName", "CoursePrice" + } + )); + tblCourseData.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + tblCourseDataMouseClicked(evt); + } + public void mouseReleased(java.awt.event.MouseEvent evt) { + tblCourseDataMouseReleased(evt); + } + }); + jScrollPane1.setViewportView(tblCourseData); + + jPanel1.add(jScrollPane1, new org.netbeans.lib.awtextra.AbsoluteConstraints(370, 90, 500, 530)); + jPanel1.add(txtCoursePrice, new org.netbeans.lib.awtextra.AbsoluteConstraints(130, 300, 190, -1)); + jPanel1.add(txtCourseId, new org.netbeans.lib.awtextra.AbsoluteConstraints(130, 200, 190, -1)); + jPanel1.add(txtCourseName, new org.netbeans.lib.awtextra.AbsoluteConstraints(130, 250, 190, -1)); + + lblCourseName.setFont(new java.awt.Font("Segoe UI", 1, 14)); // NOI18N + lblCourseName.setText("Course Name :"); + jPanel1.add(lblCourseName, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 250, -1, -1)); + + lblCoursePrice.setFont(new java.awt.Font("Segoe UI", 1, 14)); // NOI18N + lblCoursePrice.setText("Course Price :"); + jPanel1.add(lblCoursePrice, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 300, -1, -1)); + + lblCourseId.setFont(new java.awt.Font("Segoe UI", 1, 14)); // NOI18N + lblCourseId.setText("Course Id :"); + jPanel1.add(lblCourseId, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 200, -1, -1)); + + btnUpdate.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + btnUpdate.setText("UPDATE"); + btnUpdate.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + btnUpdateActionPerformed(evt); + } + }); + jPanel1.add(btnUpdate, new org.netbeans.lib.awtextra.AbsoluteConstraints(120, 380, -1, -1)); + + btnDelete.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + btnDelete.setText("DELETE"); + btnDelete.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + btnDeleteActionPerformed(evt); + } + }); + jPanel1.add(btnDelete, new org.netbeans.lib.awtextra.AbsoluteConstraints(240, 380, -1, -1)); + + btnAdd.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + btnAdd.setText("ADD"); + btnAdd.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + btnAddActionPerformed(evt); + } + }); + jPanel1.add(btnAdd, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 380, -1, -1)); + + lblHeading.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + lblHeading.setForeground(new java.awt.Color(0, 137, 181)); + lblHeading.setText("Edit Course Details"); + jPanel1.add(lblHeading, new org.netbeans.lib.awtextra.AbsoluteConstraints(420, 20, 210, -1)); + + jTextField1.setBackground(new java.awt.Color(0, 137, 181)); + jTextField1.setForeground(new java.awt.Color(0, 137, 181)); + jTextField1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + jTextField1ActionPerformed(evt); + } + }); + jPanel1.add(jTextField1, new org.netbeans.lib.awtextra.AbsoluteConstraints(414, 50, 210, 7)); + + lblBack.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/back1.png"))); // NOI18N + lblBack.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + lblBackMouseClicked(evt); + } + }); + jPanel1.add(lblBack, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 20, 40, 30)); + + getContentPane().add(jPanel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(390, 0, 900, 640)); + + pack(); + setLocationRelativeTo(null); + }// </editor-fold>//GEN-END:initComponents + + private void btnLogOutMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelLogOut.setBackground(clr); + }//GEN-LAST:event_btnLogOutMouseEntered + + private void btnLogOutMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelLogOut.setBackground(clr); + }//GEN-LAST:event_btnLogOutMouseExited + + private void btnHomeMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseClicked + HomePage home=new HomePage(); + home.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnHomeMouseClicked + + private void btnHomeMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseEntered + Color clr=new Color(255,204,204); + panelHome.setBackground(clr); + }//GEN-LAST:event_btnHomeMouseEntered + + private void btnHomeMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelHome.setBackground(clr); + }//GEN-LAST:event_btnHomeMouseExited + + private void btnSearchRecordsMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseClicked +SearchRecords records=new SearchRecords(); +records.setVisible(true); +this.dispose(); + }//GEN-LAST:event_btnSearchRecordsMouseClicked + + private void btnSearchRecordsMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelSearchRecords.setBackground(clr); + }//GEN-LAST:event_btnSearchRecordsMouseEntered + + private void btnSearchRecordsMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelSearchRecords.setBackground(clr); + }//GEN-LAST:event_btnSearchRecordsMouseExited + + private void btnEditCourseMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseClicked +EditCourse edit=new EditCourse(); +edit.setVisible(true); +this.dispose(); + }//GEN-LAST:event_btnEditCourseMouseClicked + + private void btnEditCourseMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelEditCourse.setBackground(clr); + }//GEN-LAST:event_btnEditCourseMouseEntered + + private void btnEditCourseMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelEditCourse.setBackground(clr); + }//GEN-LAST:event_btnEditCourseMouseExited + + private void btnCourseListMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseClicked + + }//GEN-LAST:event_btnCourseListMouseClicked + + private void btnCourseListMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelCourseList.setBackground(clr); + }//GEN-LAST:event_btnCourseListMouseEntered + + private void btnCourseListMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelCourseList.setBackground(clr); + }//GEN-LAST:event_btnCourseListMouseExited + + private void btnViewAllRecordsMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelViewAllRecords.setBackground(clr); + }//GEN-LAST:event_btnViewAllRecordsMouseEntered + + private void btnViewAllRecordsMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelViewAllRecords.setBackground(clr); + }//GEN-LAST:event_btnViewAllRecordsMouseExited + + private void btnBackMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelBack.setBackground(clr); + }//GEN-LAST:event_btnBackMouseEntered + + private void btnBackMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelBack.setBackground(clr); + }//GEN-LAST:event_btnBackMouseExited + + private void tblCourseDataMouseReleased(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_tblCourseDataMouseReleased + // TODO add your handling code here: + }//GEN-LAST:event_tblCourseDataMouseReleased + + private void tblCourseDataMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_tblCourseDataMouseClicked + int rowNo=tblCourseData.getSelectedRow(); + TableModel model=tblCourseData.getModel(); + txtCourseId.setText(model.getValueAt(rowNo,0 ).toString()); + txtCourseName.setText((String)model.getValueAt(rowNo, 1)); + txtCoursePrice.setText(model.getValueAt(rowNo, 2).toString()); + }//GEN-LAST:event_tblCourseDataMouseClicked + + private void btnAddActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnAddActionPerformed + int id=Integer.parseInt(txtCourseId.getText()); + String cname=txtCourseName.getText(); + double cost=Double.parseDouble(txtCoursePrice.getText()); + addCourse(id,cname,cost); + }//GEN-LAST:event_btnAddActionPerformed + + private void btnUpdateActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnUpdateActionPerformed + int id=Integer.parseInt(txtCourseId.getText()); + String cname=txtCourseName.getText(); + double cost=Double.parseDouble(txtCoursePrice.getText()); + update(id,cname,cost); + }//GEN-LAST:event_btnUpdateActionPerformed + + private void btnDeleteActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnDeleteActionPerformed + int id=Integer.parseInt(txtCourseId.getText()); + delete(id); + }//GEN-LAST:event_btnDeleteActionPerformed + + private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jTextField1ActionPerformed + // TODO add your handling code here: + }//GEN-LAST:event_jTextField1ActionPerformed + + private void lblBackMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_lblBackMouseClicked + HomePage home=new HomePage(); + home.setVisible(true); + this.dispose(); + }//GEN-LAST:event_lblBackMouseClicked + + private void btnViewAllRecordsMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseClicked + ViewAllRecords view=new ViewAllRecords(); + view.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnViewAllRecordsMouseClicked + + private void btnBackMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseClicked + HomePage home=new HomePage(); + home.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnBackMouseClicked + + private void btnLogOutMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseClicked + this.dispose(); + }//GEN-LAST:event_btnLogOutMouseClicked + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + /* Set the Nimbus look and feel */ + //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "> + /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. + * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html + */ + try { + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + if ("Nimbus".equals(info.getName())) { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + } + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(EditCourse.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(EditCourse.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(EditCourse.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(EditCourse.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + //</editor-fold> + + /* Create and display the form */ + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new EditCourse().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JButton btnAdd; + private javax.swing.JLabel btnBack; + private javax.swing.JLabel btnCourseList; + private javax.swing.JButton btnDelete; + private javax.swing.JLabel btnEditCourse; + private javax.swing.JLabel btnHome; + private javax.swing.JLabel btnLogOut; + private javax.swing.JLabel btnSearchRecords; + private javax.swing.JButton btnUpdate; + private javax.swing.JLabel btnViewAllRecords; + private javax.swing.JPanel jPanel1; + private javax.swing.JScrollPane jScrollPane1; + private javax.swing.JTextField jTextField1; + private javax.swing.JLabel lblBack; + private javax.swing.JLabel lblCourseId; + private javax.swing.JLabel lblCourseName; + private javax.swing.JLabel lblCoursePrice; + private javax.swing.JLabel lblHeading; + private javax.swing.JPanel panelBack; + private javax.swing.JPanel panelCourseList; + private javax.swing.JPanel panelEditCourse; + private javax.swing.JPanel panelHome; + private javax.swing.JPanel panelLogOut; + private javax.swing.JPanel panelSearchRecords; + private javax.swing.JPanel panelSideBar; + private javax.swing.JPanel panelViewAllRecords; + private javax.swing.JTable tblCourseData; + private javax.swing.JTextField txtCourseId; + private javax.swing.JTextField txtCourseName; + private javax.swing.JTextField txtCoursePrice; + // End of variables declaration//GEN-END:variables +} diff --git a/src/fees_management_system/Fees_Managment_Syatem.java b/src/fees_management_system/Fees_Managment_Syatem.java new file mode 100644 index 0000000..06567b1 --- /dev/null +++ b/src/fees_management_system/Fees_Managment_Syatem.java @@ -0,0 +1,20 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/Classes/Main.java to edit this template + */ +package fees_managment_syatem; + +/** + * + * @author yash + */ +public class Fees_Managment_Syatem { + + /** + * @param args the command line arguments + */ + public static void main(String[] args) { + // TODO code application logic here + } + +} diff --git a/src/fees_management_system/GenerateReport.form b/src/fees_management_system/GenerateReport.form new file mode 100644 index 0000000..c10ad89 --- /dev/null +++ b/src/fees_management_system/GenerateReport.form @@ -0,0 +1,738 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<Form version="1.5" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.JFrameFormInfo"> + <Properties> + <Property name="defaultCloseOperation" type="int" value="3"/> + </Properties> + <SyntheticProperties> + <SyntheticProperty name="formSizePolicy" type="int" value="1"/> + <SyntheticProperty name="generateCenter" type="boolean" value="true"/> + </SyntheticProperties> + <AuxValues> + <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/> + <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/> + <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/> + <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,2,126,0,0,5,6"/> + </AuxValues> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="panelSideBar"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="0" width="390" height="860"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="panelLogOut"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="540" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnLogOut"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/exit.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Logout"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnLogOutMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnLogOutMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnLogOutMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="2" width="260" height="50"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelHome"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="60" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnHome"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/home.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" HOME"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnHomeMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnHomeMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnHomeMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="310" height="50"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelSearchRecords"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="140" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnSearchRecords"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/search2.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Search Records"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnSearchRecordsMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnSearchRecordsMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnSearchRecordsMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="310" height="60"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelEditCourse"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="24" style="1"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="220" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnEditCourse"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/edit2.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Edit Course"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditCourseMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditCourseMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditCourseMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelCourseList"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="300" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnCourseList"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/list.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Course List"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnCourseListMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnCourseListMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnCourseListMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="-10" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelViewAllRecords"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="380" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnViewAllRecords"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/view all record.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" View All Records"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnViewAllRecordsMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnViewAllRecordsMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnViewAllRecordsMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="0" width="300" height="50"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelBack"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="460" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnBack"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/left-arrow.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Back"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnBackMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnBackMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnBackMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="-10" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel1"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="390" y="0" width="900" height="640"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="lblFromDate"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="From Date :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="120" y="120" width="100" height="20"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JComboBox" name="jComboBox1"> + <Properties> + <Property name="model" type="javax.swing.ComboBoxModel" editor="org.netbeans.modules.form.editors2.ComboBoxModelEditor"> + <StringArray count="6"> + <StringItem index="0" value="JAVA "/> + <StringItem index="1" value="WEB DEVELOPMENT"/> + <StringItem index="2" value="SPRINGBOOT"/> + <StringItem index="3" value="C"/> + <StringItem index="4" value="C++"/> + <StringItem index="5" value="PYTHON"/> + </StringArray> + </Property> + </Properties> + <AuxValues> + <AuxValue name="JavaCodeGenerator_TypeParameters" type="java.lang.String" value="<String>"/> + </AuxValues> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="140" y="70" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblSelectCourse"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Select Course :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="70" width="120" height="20"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblToDate"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="To Date :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="360" y="120" width="80" height="20"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblSelectDate"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Select Date :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="120" width="100" height="20"/> + </Constraint> + </Constraints> + </Component> + <Component class="com.toedter.calendar.JDateChooser" name="dateChosserFrom"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="220" y="120" width="130" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="com.toedter.calendar.JDateChooser" name="dateChosserToDate"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="440" y="120" width="130" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JButton" name="btnPrint"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Print"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnPrintActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="230" y="170" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JButton" name="btnBrowser"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Browser"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnBrowserActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="320" y="220" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtFilePath"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="220" width="270" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JButton" name="btnExportToExcel"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Export To Excel"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnExportToExcelActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="420" y="220" width="160" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JButton" name="btnSubmit"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Submit"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnSubmitActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="170" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Container class="javax.swing.JScrollPane" name="jScrollPane1"> + <AuxValues> + <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/> + </AuxValues> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="280" width="840" height="350"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/> + <SubComponents> + <Component class="javax.swing.JTable" name="tblGenerateReport"> + <Properties> + <Property name="model" type="javax.swing.table.TableModel" editor="org.netbeans.modules.form.editors2.TableModelEditor"> + <Table columnCount="6" rowCount="1"> + <Column editable="true" title="ReceiptNo" type="java.lang.Object"/> + <Column editable="true" title="StudentName" type="java.lang.Object"/> + <Column editable="true" title="PaymentMode" type="java.lang.Object"/> + <Column editable="true" title="CourseName" type="java.lang.Object"/> + <Column editable="true" title="Amount" type="java.lang.Object"/> + <Column editable="true" title="Remark" type="java.lang.Object"/> + </Table> + </Property> + <Property name="columnModel" type="javax.swing.table.TableColumnModel" editor="org.netbeans.modules.form.editors2.TableColumnModelEditor"> + <TableColumnModel selectionModel="0"> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + </TableColumnModel> + </Property> + <Property name="tableHeader" type="javax.swing.table.JTableHeader" editor="org.netbeans.modules.form.editors2.JTableHeaderEditor"> + <TableHeader reorderingAllowed="true" resizingAllowed="true"/> + </Property> + </Properties> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel2"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.LineBorderInfo"> + <LineBorder> + <Color PropertyName="color" blue="b5" green="89" red="0" type="rgb"/> + </LineBorder> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="590" y="20" width="290" height="250"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="lblSummaryTotalAmountCollected"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Total Amount Collected :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="120" width="160" height="20"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblTotalAmountsInWords"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Total Amounts In Words :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="160" width="160" height="20"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblSelectCourse3"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="b5" green="89" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="Summary"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="110" y="10" width="70" height="20"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblSummaryCourseSelected"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Course Selected :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="80" width="110" height="20"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="jTextField1"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="b5" green="89" red="0" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="100" y="30" width="70" height="5"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblDisplaySummaryCourseSelected"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="120" y="80" width="150" height="20"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblDisplaySummaryTotalAmountCollected"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="170" y="120" width="100" height="20"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblDisplaySummaryTotalAmountInWords"> + <Properties> + <Property name="verticalAlignment" type="int" value="1"/> + <Property name="verticalTextPosition" type="int" value="1"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="190" width="260" height="50"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + </SubComponents> + </Container> + </SubComponents> +</Form> diff --git a/src/fees_management_system/GenerateReport.java b/src/fees_management_system/GenerateReport.java new file mode 100644 index 0000000..71ae93a --- /dev/null +++ b/src/fees_management_system/GenerateReport.java @@ -0,0 +1,692 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to edit this template + */ +package fees_managment_syatem; + +import java.awt.Color; +import java.io.File; +import java.io.FileOutputStream; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.text.MessageFormat; +import java.text.SimpleDateFormat; +import java.util.Arrays; +import java.util.Date; +import java.util.Map; +import java.util.Set; +import java.util.TreeMap; +import javax.swing.JFileChooser; +import javax.swing.JOptionPane; +import javax.swing.JTable; +import javax.swing.table.DefaultTableModel; +import org.apache.poi.xssf.usermodel.XSSFCell; +import org.apache.poi.xssf.usermodel.XSSFRow; +import org.apache.poi.xssf.usermodel.XSSFSheet; +import org.apache.poi.xssf.usermodel.XSSFWorkbook; + +/** + * + * @author yash + */ +public class GenerateReport extends javax.swing.JFrame { + + /** + * Creates new form GenerateReport + */ + DefaultTableModel model; + public GenerateReport() { + initComponents(); + fillComboBox(); + } + public void fillComboBox(){ + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + PreparedStatement pst=con.prepareStatement("select CNAME from course"); + ResultSet rs=pst.executeQuery(); + while(rs.next()){ + jComboBox1.addItem(rs.getString("CNAME")); + } + }catch(Exception e){ + e.printStackTrace(); + } + } + public void setRecordsToTable(){ + String cname=jComboBox1.getSelectedItem().toString(); + SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd"); + String fromDate=dateFormat.format(dateChosserFrom.getDate()); + String toDate=dateFormat.format(dateChosserToDate.getDate()); + Float amountTotal=0.0f; + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + PreparedStatement pst=con.prepareStatement("select * from fees_details where date between ? and ? and courseName = ?"); + pst.setString(1,fromDate); + pst.setString(2,toDate); + pst.setString(3,cname); + ResultSet rs=pst.executeQuery(); + while(rs.next()){ + String recieptNo=rs.getString("recieptNo"); + String rollNo=rs.getString("rollNo"); + String studentName=rs.getString("studentName"); + String courseName=rs.getString("courseName"); + float amount=rs.getFloat("totalAmount"); + String remark=rs.getString("remark"); + amountTotal = amountTotal + amount; + Object[] obj={recieptNo,rollNo,studentName,courseName,amount,remark}; + model=(DefaultTableModel)tblGenerateReport.getModel(); + model.addRow(obj); + } + lblDisplaySummaryCourseSelected.setText(cname); + lblDisplaySummaryTotalAmountCollected.setText(amountTotal.toString()); + lblDisplaySummaryTotalAmountInWords.setText(NumberToWordsConverter.convert(amountTotal.intValue())+" only /-"); + }catch(Exception e){ + e.printStackTrace(); + } +} + public void clearTable(){ + DefaultTableModel model=(DefaultTableModel)tblGenerateReport.getModel(); + model.setRowCount(1); +} + public void exportToExcel(){ + XSSFWorkbook wb=new XSSFWorkbook(); + XSSFSheet ws=wb.createSheet(); + model=(DefaultTableModel)tblGenerateReport.getModel(); + TreeMap<String,Object[]> map=new TreeMap<>(); + map.put("0",new Object[]{model.getColumnName(0),model.getColumnName(1),model.getColumnName(2),model.getColumnName(3),model.getColumnName(4),model.getColumnName(5)}); + for(int i=1;i<model.getRowCount();i++){ + map.put(Integer.toString(i),new Object[]{model.getValueAt(i, 0),model.getValueAt(i,1),model.getValueAt(i,2),model.getValueAt(i,3),model.getValueAt(i,4),model.getValueAt(i,5)}); + } + Set<String> id=map.keySet(); + XSSFRow fRow; + int rowId=0; + for(String key : id){ + fRow=ws.createRow(rowId++); + Object[] value=map.get(key); + int cellId=0; + for(Object object : value){ + XSSFCell cell=fRow.createCell(cellId++); + cell.setCellValue(object.toString()); + } + + } + try(FileOutputStream fos = new FileOutputStream(new File(txtFilePath.getText()))){ + wb.write(fos); + JOptionPane.showMessageDialog(this,"File Exported Successfully : "+txtFilePath.getText()); + }catch(Exception e){ + e.printStackTrace(); + } + for(Map.Entry<String,Object[]> entry : map.entrySet()){ + String key=entry.getKey(); + Object[] value=entry.getValue(); + System.out.println(Arrays.toString(value)); + } + } + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents + private void initComponents() { + + panelSideBar = new javax.swing.JPanel(); + panelLogOut = new javax.swing.JPanel(); + btnLogOut = new javax.swing.JLabel(); + panelHome = new javax.swing.JPanel(); + btnHome = new javax.swing.JLabel(); + panelSearchRecords = new javax.swing.JPanel(); + btnSearchRecords = new javax.swing.JLabel(); + panelEditCourse = new javax.swing.JPanel(); + btnEditCourse = new javax.swing.JLabel(); + panelCourseList = new javax.swing.JPanel(); + btnCourseList = new javax.swing.JLabel(); + panelViewAllRecords = new javax.swing.JPanel(); + btnViewAllRecords = new javax.swing.JLabel(); + panelBack = new javax.swing.JPanel(); + btnBack = new javax.swing.JLabel(); + jPanel1 = new javax.swing.JPanel(); + lblFromDate = new javax.swing.JLabel(); + jComboBox1 = new javax.swing.JComboBox<>(); + lblSelectCourse = new javax.swing.JLabel(); + lblToDate = new javax.swing.JLabel(); + lblSelectDate = new javax.swing.JLabel(); + dateChosserFrom = new com.toedter.calendar.JDateChooser(); + dateChosserToDate = new com.toedter.calendar.JDateChooser(); + btnPrint = new javax.swing.JButton(); + btnBrowser = new javax.swing.JButton(); + txtFilePath = new javax.swing.JTextField(); + btnExportToExcel = new javax.swing.JButton(); + btnSubmit = new javax.swing.JButton(); + jScrollPane1 = new javax.swing.JScrollPane(); + tblGenerateReport = new javax.swing.JTable(); + jPanel2 = new javax.swing.JPanel(); + lblSummaryTotalAmountCollected = new javax.swing.JLabel(); + lblTotalAmountsInWords = new javax.swing.JLabel(); + lblSelectCourse3 = new javax.swing.JLabel(); + lblSummaryCourseSelected = new javax.swing.JLabel(); + jTextField1 = new javax.swing.JTextField(); + lblDisplaySummaryCourseSelected = new javax.swing.JLabel(); + lblDisplaySummaryTotalAmountCollected = new javax.swing.JLabel(); + lblDisplaySummaryTotalAmountInWords = new javax.swing.JLabel(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + panelSideBar.setBackground(new java.awt.Color(255, 102, 102)); + panelSideBar.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + panelLogOut.setBackground(new java.awt.Color(255, 102, 102)); + panelLogOut.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelLogOut.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnLogOut.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnLogOut.setForeground(new java.awt.Color(255, 255, 255)); + btnLogOut.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/exit.png"))); // NOI18N + btnLogOut.setText(" Logout"); + btnLogOut.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnLogOutMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnLogOutMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnLogOutMouseExited(evt); + } + }); + panelLogOut.add(btnLogOut, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 2, 260, 50)); + + panelSideBar.add(panelLogOut, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 540, 320, 50)); + + panelHome.setBackground(new java.awt.Color(255, 102, 102)); + panelHome.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelHome.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnHome.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnHome.setForeground(new java.awt.Color(255, 255, 255)); + btnHome.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/home.png"))); // NOI18N + btnHome.setText(" HOME"); + btnHome.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnHomeMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnHomeMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnHomeMouseExited(evt); + } + }); + panelHome.add(btnHome, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 310, 50)); + + panelSideBar.add(panelHome, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 60, 320, 50)); + + panelSearchRecords.setBackground(new java.awt.Color(255, 102, 102)); + panelSearchRecords.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelSearchRecords.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnSearchRecords.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnSearchRecords.setForeground(new java.awt.Color(255, 255, 255)); + btnSearchRecords.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/search2.png"))); // NOI18N + btnSearchRecords.setText(" Search Records"); + btnSearchRecords.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseExited(evt); + } + }); + panelSearchRecords.add(btnSearchRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 310, 60)); + + panelSideBar.add(panelSearchRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 140, 320, 50)); + + panelEditCourse.setBackground(new java.awt.Color(255, 102, 102)); + panelEditCourse.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelEditCourse.setFont(new java.awt.Font("Segoe UI", 1, 24)); // NOI18N + panelEditCourse.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnEditCourse.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnEditCourse.setForeground(new java.awt.Color(255, 255, 255)); + btnEditCourse.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/edit2.png"))); // NOI18N + btnEditCourse.setText(" Edit Course"); + btnEditCourse.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnEditCourseMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnEditCourseMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnEditCourseMouseExited(evt); + } + }); + panelEditCourse.add(btnEditCourse, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 260, -1)); + + panelSideBar.add(panelEditCourse, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 220, 320, 50)); + + panelCourseList.setBackground(new java.awt.Color(255, 102, 102)); + panelCourseList.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelCourseList.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnCourseList.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnCourseList.setForeground(new java.awt.Color(255, 255, 255)); + btnCourseList.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/list.png"))); // NOI18N + btnCourseList.setText(" Course List"); + btnCourseList.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnCourseListMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnCourseListMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnCourseListMouseExited(evt); + } + }); + panelCourseList.add(btnCourseList, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, -10, 260, -1)); + + panelSideBar.add(panelCourseList, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 300, 320, 50)); + + panelViewAllRecords.setBackground(new java.awt.Color(255, 102, 102)); + panelViewAllRecords.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelViewAllRecords.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnViewAllRecords.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnViewAllRecords.setForeground(new java.awt.Color(255, 255, 255)); + btnViewAllRecords.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/view all record.png"))); // NOI18N + btnViewAllRecords.setText(" View All Records"); + btnViewAllRecords.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseExited(evt); + } + }); + panelViewAllRecords.add(btnViewAllRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 300, 50)); + + panelSideBar.add(panelViewAllRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 380, 320, 50)); + + panelBack.setBackground(new java.awt.Color(255, 102, 102)); + panelBack.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelBack.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnBack.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnBack.setForeground(new java.awt.Color(255, 255, 255)); + btnBack.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/left-arrow.png"))); // NOI18N + btnBack.setText(" Back"); + btnBack.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnBackMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnBackMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnBackMouseExited(evt); + } + }); + panelBack.add(btnBack, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, -10, 260, -1)); + + panelSideBar.add(panelBack, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 460, 320, 50)); + + getContentPane().add(panelSideBar, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 390, 860)); + + jPanel1.setBackground(new java.awt.Color(255, 204, 204)); + jPanel1.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + lblFromDate.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + lblFromDate.setText("From Date :"); + jPanel1.add(lblFromDate, new org.netbeans.lib.awtextra.AbsoluteConstraints(120, 120, 100, 20)); + + jComboBox1.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] { "JAVA ", "WEB DEVELOPMENT", "SPRINGBOOT", "C", "C++", "PYTHON" })); + jPanel1.add(jComboBox1, new org.netbeans.lib.awtextra.AbsoluteConstraints(140, 70, 260, -1)); + + lblSelectCourse.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + lblSelectCourse.setText("Select Course :"); + jPanel1.add(lblSelectCourse, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 70, 120, 20)); + + lblToDate.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + lblToDate.setText("To Date :"); + jPanel1.add(lblToDate, new org.netbeans.lib.awtextra.AbsoluteConstraints(360, 120, 80, 20)); + + lblSelectDate.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + lblSelectDate.setText("Select Date :"); + jPanel1.add(lblSelectDate, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 120, 100, 20)); + jPanel1.add(dateChosserFrom, new org.netbeans.lib.awtextra.AbsoluteConstraints(220, 120, 130, -1)); + jPanel1.add(dateChosserToDate, new org.netbeans.lib.awtextra.AbsoluteConstraints(440, 120, 130, -1)); + + btnPrint.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + btnPrint.setText("Print"); + btnPrint.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + btnPrintActionPerformed(evt); + } + }); + jPanel1.add(btnPrint, new org.netbeans.lib.awtextra.AbsoluteConstraints(230, 170, -1, -1)); + + btnBrowser.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + btnBrowser.setText("Browser"); + btnBrowser.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + btnBrowserActionPerformed(evt); + } + }); + jPanel1.add(btnBrowser, new org.netbeans.lib.awtextra.AbsoluteConstraints(320, 220, -1, -1)); + jPanel1.add(txtFilePath, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 220, 270, -1)); + + btnExportToExcel.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + btnExportToExcel.setText("Export To Excel"); + btnExportToExcel.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + btnExportToExcelActionPerformed(evt); + } + }); + jPanel1.add(btnExportToExcel, new org.netbeans.lib.awtextra.AbsoluteConstraints(420, 220, 160, -1)); + + btnSubmit.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + btnSubmit.setText("Submit"); + btnSubmit.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + btnSubmitActionPerformed(evt); + } + }); + jPanel1.add(btnSubmit, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 170, -1, -1)); + + tblGenerateReport.setModel(new javax.swing.table.DefaultTableModel( + new Object [][] { + {null, null, null, null, null, null} + }, + new String [] { + "ReceiptNo", "StudentName", "PaymentMode", "CourseName", "Amount", "Remark" + } + )); + jScrollPane1.setViewportView(tblGenerateReport); + + jPanel1.add(jScrollPane1, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 280, 840, 350)); + + jPanel2.setBackground(new java.awt.Color(255, 255, 255)); + jPanel2.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 137, 181))); + jPanel2.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + lblSummaryTotalAmountCollected.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + lblSummaryTotalAmountCollected.setText("Total Amount Collected :"); + jPanel2.add(lblSummaryTotalAmountCollected, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 120, 160, 20)); + + lblTotalAmountsInWords.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + lblTotalAmountsInWords.setText("Total Amounts In Words :"); + jPanel2.add(lblTotalAmountsInWords, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 160, 160, 20)); + + lblSelectCourse3.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + lblSelectCourse3.setForeground(new java.awt.Color(0, 137, 181)); + lblSelectCourse3.setText("Summary"); + jPanel2.add(lblSelectCourse3, new org.netbeans.lib.awtextra.AbsoluteConstraints(110, 10, 70, 20)); + + lblSummaryCourseSelected.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + lblSummaryCourseSelected.setText("Course Selected :"); + jPanel2.add(lblSummaryCourseSelected, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 80, 110, 20)); + + jTextField1.setBackground(new java.awt.Color(0, 137, 181)); + jPanel2.add(jTextField1, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 30, 70, 5)); + jPanel2.add(lblDisplaySummaryCourseSelected, new org.netbeans.lib.awtextra.AbsoluteConstraints(120, 80, 150, 20)); + jPanel2.add(lblDisplaySummaryTotalAmountCollected, new org.netbeans.lib.awtextra.AbsoluteConstraints(170, 120, 100, 20)); + + lblDisplaySummaryTotalAmountInWords.setVerticalAlignment(javax.swing.SwingConstants.TOP); + lblDisplaySummaryTotalAmountInWords.setVerticalTextPosition(javax.swing.SwingConstants.TOP); + jPanel2.add(lblDisplaySummaryTotalAmountInWords, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 190, 260, 50)); + + jPanel1.add(jPanel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(590, 20, 290, 250)); + + getContentPane().add(jPanel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(390, 0, 900, 640)); + + pack(); + setLocationRelativeTo(null); + }// </editor-fold>//GEN-END:initComponents + + private void btnLogOutMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelLogOut.setBackground(clr); + }//GEN-LAST:event_btnLogOutMouseEntered + + private void btnLogOutMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelLogOut.setBackground(clr); + }//GEN-LAST:event_btnLogOutMouseExited + + private void btnHomeMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseClicked + HomePage home=new HomePage(); + home.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnHomeMouseClicked + + private void btnHomeMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseEntered + Color clr=new Color(255,204,204); + panelHome.setBackground(clr); + }//GEN-LAST:event_btnHomeMouseEntered + + private void btnHomeMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelHome.setBackground(clr); + }//GEN-LAST:event_btnHomeMouseExited + + private void btnSearchRecordsMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseClicked +SearchRecords records=new SearchRecords(); +records.setVisible(true); +this.dispose(); + }//GEN-LAST:event_btnSearchRecordsMouseClicked + + private void btnSearchRecordsMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelSearchRecords.setBackground(clr); + }//GEN-LAST:event_btnSearchRecordsMouseEntered + + private void btnSearchRecordsMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelSearchRecords.setBackground(clr); + }//GEN-LAST:event_btnSearchRecordsMouseExited + + private void btnEditCourseMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseClicked + EditCourse edit=new EditCourse(); + edit.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnEditCourseMouseClicked + + private void btnEditCourseMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelEditCourse.setBackground(clr); + }//GEN-LAST:event_btnEditCourseMouseEntered + + private void btnEditCourseMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelEditCourse.setBackground(clr); + }//GEN-LAST:event_btnEditCourseMouseExited + + private void btnCourseListMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseClicked + + }//GEN-LAST:event_btnCourseListMouseClicked + + private void btnCourseListMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelCourseList.setBackground(clr); + }//GEN-LAST:event_btnCourseListMouseEntered + + private void btnCourseListMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelCourseList.setBackground(clr); + }//GEN-LAST:event_btnCourseListMouseExited + + private void btnViewAllRecordsMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelViewAllRecords.setBackground(clr); + }//GEN-LAST:event_btnViewAllRecordsMouseEntered + + private void btnViewAllRecordsMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelViewAllRecords.setBackground(clr); + }//GEN-LAST:event_btnViewAllRecordsMouseExited + + private void btnBackMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelBack.setBackground(clr); + }//GEN-LAST:event_btnBackMouseEntered + + private void btnBackMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelBack.setBackground(clr); + }//GEN-LAST:event_btnBackMouseExited + + private void btnBrowserActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnBrowserActionPerformed + JFileChooser fileChooser =new JFileChooser(); + fileChooser.showOpenDialog(this); + SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd"); + String date=dateFormat.format(new Date()); + try{ + File f=fileChooser.getSelectedFile(); + String path=f.getAbsolutePath(); + path=path+"_"+date+".xlsx"; + txtFilePath.setText(path); + }catch(Exception e){ + e.printStackTrace(); + } + }//GEN-LAST:event_btnBrowserActionPerformed + + private void btnSubmitActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnSubmitActionPerformed + clearTable(); + setRecordsToTable(); + }//GEN-LAST:event_btnSubmitActionPerformed + + private void btnPrintActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnPrintActionPerformed + SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd"); + String dateFrom=dateFormat.format(dateChosserFrom.getDate()); + String dateTo=dateFormat.format(dateChosserToDate.getDate()); + MessageFormat header=new MessageFormat("Report From "+dateFrom+" To "+dateTo); + MessageFormat fotter=new MessageFormat("page{0,number,integer}"); + try{ + tblGenerateReport.print(JTable.PrintMode.FIT_WIDTH,header,fotter); + }catch(Exception e){ + e.getMessage(); + } + }//GEN-LAST:event_btnPrintActionPerformed + + private void btnExportToExcelActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnExportToExcelActionPerformed + exportToExcel(); + }//GEN-LAST:event_btnExportToExcelActionPerformed + + private void btnViewAllRecordsMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseClicked + ViewAllRecords view=new ViewAllRecords(); + view.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnViewAllRecordsMouseClicked + + private void btnBackMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseClicked + HomePage home=new HomePage(); + home.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnBackMouseClicked + + private void btnLogOutMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseClicked +this.dispose(); // TODO add your handling code here: + }//GEN-LAST:event_btnLogOutMouseClicked + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + /* Set the Nimbus look and feel */ + //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "> + /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. + * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html + */ + try { + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + if ("Nimbus".equals(info.getName())) { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + } + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(GenerateReport.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(GenerateReport.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(GenerateReport.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(GenerateReport.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + //</editor-fold> + + /* Create and display the form */ + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new GenerateReport().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JLabel btnBack; + private javax.swing.JButton btnBrowser; + private javax.swing.JLabel btnCourseList; + private javax.swing.JLabel btnEditCourse; + private javax.swing.JButton btnExportToExcel; + private javax.swing.JLabel btnHome; + private javax.swing.JLabel btnLogOut; + private javax.swing.JButton btnPrint; + private javax.swing.JLabel btnSearchRecords; + private javax.swing.JButton btnSubmit; + private javax.swing.JLabel btnViewAllRecords; + private com.toedter.calendar.JDateChooser dateChosserFrom; + private com.toedter.calendar.JDateChooser dateChosserToDate; + private javax.swing.JComboBox<String> jComboBox1; + private javax.swing.JPanel jPanel1; + private javax.swing.JPanel jPanel2; + private javax.swing.JScrollPane jScrollPane1; + private javax.swing.JTextField jTextField1; + private javax.swing.JLabel lblDisplaySummaryCourseSelected; + private javax.swing.JLabel lblDisplaySummaryTotalAmountCollected; + private javax.swing.JLabel lblDisplaySummaryTotalAmountInWords; + private javax.swing.JLabel lblFromDate; + private javax.swing.JLabel lblSelectCourse; + private javax.swing.JLabel lblSelectCourse3; + private javax.swing.JLabel lblSelectDate; + private javax.swing.JLabel lblSummaryCourseSelected; + private javax.swing.JLabel lblSummaryTotalAmountCollected; + private javax.swing.JLabel lblToDate; + private javax.swing.JLabel lblTotalAmountsInWords; + private javax.swing.JPanel panelBack; + private javax.swing.JPanel panelCourseList; + private javax.swing.JPanel panelEditCourse; + private javax.swing.JPanel panelHome; + private javax.swing.JPanel panelLogOut; + private javax.swing.JPanel panelSearchRecords; + private javax.swing.JPanel panelSideBar; + private javax.swing.JPanel panelViewAllRecords; + private javax.swing.JTable tblGenerateReport; + private javax.swing.JTextField txtFilePath; + // End of variables declaration//GEN-END:variables +} diff --git a/src/fees_management_system/HomePage.form b/src/fees_management_system/HomePage.form new file mode 100644 index 0000000..7f4175f --- /dev/null +++ b/src/fees_management_system/HomePage.form @@ -0,0 +1,638 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<Form version="1.3" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.JFrameFormInfo"> + <Properties> + <Property name="defaultCloseOperation" type="int" value="3"/> + </Properties> + <SyntheticProperties> + <SyntheticProperty name="formSizePolicy" type="int" value="1"/> + <SyntheticProperty name="generateCenter" type="boolean" value="true"/> + </SyntheticProperties> + <AuxValues> + <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/> + <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/> + <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/> + <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,2,31,0,0,3,-82"/> + </AuxValues> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="jPanel1"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="6" y="0" width="880" height="-1"/> + </Constraint> + </Constraints> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace min="-2" pref="326" max="-2" attributes="0"/> + <Group type="103" groupAlignment="1" attributes="0"> + <Component id="jLabel2" min="-2" max="-2" attributes="0"/> + <Component id="jLabel1" min="-2" pref="142" max="-2" attributes="0"/> + </Group> + <EmptySpace min="0" pref="0" max="32767" attributes="0"/> + </Group> + <Group type="102" attributes="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <EmptySpace min="-2" pref="147" max="-2" attributes="0"/> + <Component id="jLabel3" min="-2" pref="564" max="-2" attributes="0"/> + </Group> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace min="-2" pref="270" max="-2" attributes="0"/> + <Component id="jLabel4" min="-2" max="-2" attributes="0"/> + </Group> + </Group> + <EmptySpace pref="169" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel1" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel2" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel3" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel4" min="-2" max="-2" attributes="0"/> + <EmptySpace pref="24" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel1"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="12" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="Laxmi Charitable Trust's"/> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="jLabel2"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="Manikya Lal Verma"/> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="jLabel3"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="36" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="MLV Textile & Engineering College"/> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="jLabel4"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="12" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="Pur road, Pratap Nagar, Bilwara, Rajasthan 311001"/> + </Properties> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel2"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="6" y="144" width="-1" height="520"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="jPanel3"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jPanel3MouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jPanel3MouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="22" y="20" width="-1" height="-1"/> + </Constraint> + </Constraints> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="1" attributes="0"> + <EmptySpace pref="18" max="32767" attributes="0"/> + <Component id="jLabel5" min="-2" max="-2" attributes="0"/> + <EmptySpace min="-2" pref="17" max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace min="-2" pref="14" max="-2" attributes="0"/> + <Component id="jLabel5" min="-2" pref="99" max="-2" attributes="0"/> + <EmptySpace pref="23" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel5"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/plus.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Add Fees"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel5MouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel5MouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel5MouseExited"/> + </Events> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel5"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jPanel5MouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jPanel5MouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="595" y="20" width="250" height="-1"/> + </Constraint> + </Constraints> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel6" min="-2" max="-2" attributes="0"/> + <EmptySpace pref="16" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace min="-2" pref="18" max="-2" attributes="0"/> + <Component id="jLabel6" min="-2" pref="92" max="-2" attributes="0"/> + <EmptySpace pref="26" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel6"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/text-book-opened-from-top-view.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" View Records"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel6MouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel6MouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel6MouseExited"/> + </Events> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel6"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jPanel6MouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jPanel6MouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="22" y="221" width="-1" height="-1"/> + </Constraint> + </Constraints> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel7" min="-2" max="-2" attributes="0"/> + <EmptySpace pref="29" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace min="-2" pref="19" max="-2" attributes="0"/> + <Component id="jLabel7" min="-2" pref="99" max="-2" attributes="0"/> + <EmptySpace pref="18" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel7"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/edit.png"/> + </Property> + <Property name="text" type="java.lang.String" value="Edit Course"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel7MouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel7MouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel7MouseExited"/> + </Events> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel7"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jPanel7MouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jPanel7MouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="301" y="221" width="270" height="-1"/> + </Constraint> + </Constraints> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel8" min="-2" max="-2" attributes="0"/> + <EmptySpace pref="46" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace min="-2" pref="19" max="-2" attributes="0"/> + <Component id="jLabel8" min="-2" pref="99" max="-2" attributes="0"/> + <EmptySpace pref="18" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel8"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/text-book-opened-from-top-view.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" View Course"/> + </Properties> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel8"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jPanel8MouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jPanel8MouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="595" y="221" width="-1" height="-1"/> + </Constraint> + </Constraints> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel9" min="-2" max="-2" attributes="0"/> + <EmptySpace pref="34" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace min="-2" pref="14" max="-2" attributes="0"/> + <Component id="jLabel9" min="-2" pref="108" max="-2" attributes="0"/> + <EmptySpace pref="14" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel9"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/view report.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" View Report"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel9MouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel9MouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel9MouseExited"/> + </Events> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel9"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jPanel9MouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jPanel9MouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="301" y="20" width="-1" height="-1"/> + </Constraint> + </Constraints> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel10" min="-2" max="-2" attributes="0"/> + <EmptySpace pref="29" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace min="-2" pref="14" max="-2" attributes="0"/> + <Component id="jLabel10" min="-2" pref="99" max="-2" attributes="0"/> + <EmptySpace pref="23" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel10"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/search-document.png"/> + </Property> + <Property name="text" type="java.lang.String" value="Search Records"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel10MouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel10MouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel10MouseExited"/> + </Events> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel4"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jPanel4MouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jPanel4MouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="740" y="400" width="140" height="60"/> + </Constraint> + </Constraints> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel12" pref="124" max="32767" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="jLabel12" alignment="0" pref="56" max="32767" attributes="0"/> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel12"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="14" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/about.png"/> + </Property> + <Property name="text" type="java.lang.String" value="About"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel12MouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel12MouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel12MouseExited"/> + </Events> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel10"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="400" width="130" height="60"/> + </Constraint> + </Constraints> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel13" min="-2" pref="106" max="-2" attributes="0"/> + <EmptySpace pref="14" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <Component id="jLabel13" min="-2" pref="58" max="-2" attributes="0"/> + <EmptySpace min="0" pref="0" max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel13"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="14" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/exit.png"/> + </Property> + <Property name="text" type="java.lang.String" value="Logout"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel13MouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel13MouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel13MouseExited"/> + </Events> + </Component> + </SubComponents> + </Container> + </SubComponents> + </Container> + </SubComponents> +</Form> diff --git a/src/fees_management_system/HomePage.java b/src/fees_management_system/HomePage.java new file mode 100644 index 0000000..64838e6 --- /dev/null +++ b/src/fees_management_system/HomePage.java @@ -0,0 +1,705 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to edit this template + */ +package fees_managment_syatem; + +import java.awt.Color; + +/** + * + * @author yash + */ +public class HomePage extends javax.swing.JFrame { + + /** + * Creates new form HomePage + */ + public HomePage() { + initComponents(); + } + + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents + private void initComponents() { + + jPanel1 = new javax.swing.JPanel(); + jLabel1 = new javax.swing.JLabel(); + jLabel2 = new javax.swing.JLabel(); + jLabel3 = new javax.swing.JLabel(); + jLabel4 = new javax.swing.JLabel(); + jPanel2 = new javax.swing.JPanel(); + jPanel3 = new javax.swing.JPanel(); + jLabel5 = new javax.swing.JLabel(); + jPanel5 = new javax.swing.JPanel(); + jLabel6 = new javax.swing.JLabel(); + jPanel6 = new javax.swing.JPanel(); + jLabel7 = new javax.swing.JLabel(); + jPanel7 = new javax.swing.JPanel(); + jLabel8 = new javax.swing.JLabel(); + jPanel8 = new javax.swing.JPanel(); + jLabel9 = new javax.swing.JLabel(); + jPanel9 = new javax.swing.JPanel(); + jLabel10 = new javax.swing.JLabel(); + jPanel4 = new javax.swing.JPanel(); + jLabel12 = new javax.swing.JLabel(); + jPanel10 = new javax.swing.JPanel(); + jLabel13 = new javax.swing.JLabel(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + jPanel1.setBackground(new java.awt.Color(255, 204, 204)); + + jLabel1.setFont(new java.awt.Font("Times New Roman", 1, 12)); // NOI18N + jLabel1.setForeground(new java.awt.Color(255, 102, 102)); + jLabel1.setText("Laxmi Charitable Trust's"); + + jLabel2.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + jLabel2.setForeground(new java.awt.Color(255, 102, 102)); + jLabel2.setText("Manikya Lal Verma"); + + jLabel3.setFont(new java.awt.Font("Times New Roman", 1, 36)); // NOI18N + jLabel3.setForeground(new java.awt.Color(255, 102, 102)); + jLabel3.setText("MLV Textile & Engineering College"); + + jLabel4.setFont(new java.awt.Font("Times New Roman", 1, 12)); // NOI18N + jLabel4.setForeground(new java.awt.Color(255, 102, 102)); + jLabel4.setText("Pur road, Pratap Nagar, Bilwara, Rajasthan 311001"); + + javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); + jPanel1.setLayout(jPanel1Layout); + jPanel1Layout.setHorizontalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addGap(326, 326, 326) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addComponent(jLabel2) + .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 142, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(0, 0, Short.MAX_VALUE)) + .addGroup(jPanel1Layout.createSequentialGroup() + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addGap(147, 147, 147) + .addComponent(jLabel3, javax.swing.GroupLayout.PREFERRED_SIZE, 564, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGroup(jPanel1Layout.createSequentialGroup() + .addGap(270, 270, 270) + .addComponent(jLabel4))) + .addContainerGap(169, Short.MAX_VALUE)) + ); + jPanel1Layout.setVerticalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel1Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jLabel1) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jLabel2) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jLabel3) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jLabel4) + .addContainerGap(24, Short.MAX_VALUE)) + ); + + getContentPane().add(jPanel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(6, 0, 880, -1)); + + jPanel2.setBackground(new java.awt.Color(255, 102, 102)); + jPanel2.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + jPanel3.setBackground(new java.awt.Color(255, 204, 204)); + jPanel3.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + jPanel3.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + jPanel3MouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + jPanel3MouseExited(evt); + } + }); + + jLabel5.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + jLabel5.setForeground(new java.awt.Color(255, 255, 255)); + jLabel5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/plus.png"))); // NOI18N + jLabel5.setText(" Add Fees"); + jLabel5.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + jLabel5MouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + jLabel5MouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + jLabel5MouseExited(evt); + } + }); + + javax.swing.GroupLayout jPanel3Layout = new javax.swing.GroupLayout(jPanel3); + jPanel3.setLayout(jPanel3Layout); + jPanel3Layout.setHorizontalGroup( + jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel3Layout.createSequentialGroup() + .addContainerGap(18, Short.MAX_VALUE) + .addComponent(jLabel5) + .addGap(17, 17, 17)) + ); + jPanel3Layout.setVerticalGroup( + jPanel3Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel3Layout.createSequentialGroup() + .addGap(14, 14, 14) + .addComponent(jLabel5, javax.swing.GroupLayout.PREFERRED_SIZE, 99, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(23, Short.MAX_VALUE)) + ); + + jPanel2.add(jPanel3, new org.netbeans.lib.awtextra.AbsoluteConstraints(22, 20, -1, -1)); + + jPanel5.setBackground(new java.awt.Color(255, 204, 204)); + jPanel5.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + jPanel5.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + jPanel5MouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + jPanel5MouseExited(evt); + } + }); + + jLabel6.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + jLabel6.setForeground(new java.awt.Color(255, 255, 255)); + jLabel6.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/text-book-opened-from-top-view.png"))); // NOI18N + jLabel6.setText(" View Records"); + jLabel6.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + jLabel6MouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + jLabel6MouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + jLabel6MouseExited(evt); + } + }); + + javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5); + jPanel5.setLayout(jPanel5Layout); + jPanel5Layout.setHorizontalGroup( + jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel5Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jLabel6) + .addContainerGap(16, Short.MAX_VALUE)) + ); + jPanel5Layout.setVerticalGroup( + jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel5Layout.createSequentialGroup() + .addGap(18, 18, 18) + .addComponent(jLabel6, javax.swing.GroupLayout.PREFERRED_SIZE, 92, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(26, Short.MAX_VALUE)) + ); + + jPanel2.add(jPanel5, new org.netbeans.lib.awtextra.AbsoluteConstraints(595, 20, 250, -1)); + + jPanel6.setBackground(new java.awt.Color(255, 204, 204)); + jPanel6.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + jPanel6.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + jPanel6MouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + jPanel6MouseExited(evt); + } + }); + + jLabel7.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + jLabel7.setForeground(new java.awt.Color(255, 255, 255)); + jLabel7.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/edit.png"))); // NOI18N + jLabel7.setText("Edit Course"); + jLabel7.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + jLabel7MouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + jLabel7MouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + jLabel7MouseExited(evt); + } + }); + + javax.swing.GroupLayout jPanel6Layout = new javax.swing.GroupLayout(jPanel6); + jPanel6.setLayout(jPanel6Layout); + jPanel6Layout.setHorizontalGroup( + jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel6Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jLabel7) + .addContainerGap(29, Short.MAX_VALUE)) + ); + jPanel6Layout.setVerticalGroup( + jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel6Layout.createSequentialGroup() + .addGap(19, 19, 19) + .addComponent(jLabel7, javax.swing.GroupLayout.PREFERRED_SIZE, 99, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(18, Short.MAX_VALUE)) + ); + + jPanel2.add(jPanel6, new org.netbeans.lib.awtextra.AbsoluteConstraints(22, 221, -1, -1)); + + jPanel7.setBackground(new java.awt.Color(255, 204, 204)); + jPanel7.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + jPanel7.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + jPanel7MouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + jPanel7MouseExited(evt); + } + }); + + jLabel8.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + jLabel8.setForeground(new java.awt.Color(255, 255, 255)); + jLabel8.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/text-book-opened-from-top-view.png"))); // NOI18N + jLabel8.setText(" View Course"); + + javax.swing.GroupLayout jPanel7Layout = new javax.swing.GroupLayout(jPanel7); + jPanel7.setLayout(jPanel7Layout); + jPanel7Layout.setHorizontalGroup( + jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel7Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jLabel8) + .addContainerGap(46, Short.MAX_VALUE)) + ); + jPanel7Layout.setVerticalGroup( + jPanel7Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel7Layout.createSequentialGroup() + .addGap(19, 19, 19) + .addComponent(jLabel8, javax.swing.GroupLayout.PREFERRED_SIZE, 99, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(18, Short.MAX_VALUE)) + ); + + jPanel2.add(jPanel7, new org.netbeans.lib.awtextra.AbsoluteConstraints(301, 221, 270, -1)); + + jPanel8.setBackground(new java.awt.Color(255, 204, 204)); + jPanel8.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + jPanel8.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + jPanel8MouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + jPanel8MouseExited(evt); + } + }); + + jLabel9.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + jLabel9.setForeground(new java.awt.Color(255, 255, 255)); + jLabel9.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/view report.png"))); // NOI18N + jLabel9.setText(" View Report"); + jLabel9.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + jLabel9MouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + jLabel9MouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + jLabel9MouseExited(evt); + } + }); + + javax.swing.GroupLayout jPanel8Layout = new javax.swing.GroupLayout(jPanel8); + jPanel8.setLayout(jPanel8Layout); + jPanel8Layout.setHorizontalGroup( + jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel8Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jLabel9) + .addContainerGap(34, Short.MAX_VALUE)) + ); + jPanel8Layout.setVerticalGroup( + jPanel8Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel8Layout.createSequentialGroup() + .addGap(14, 14, 14) + .addComponent(jLabel9, javax.swing.GroupLayout.PREFERRED_SIZE, 108, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(14, Short.MAX_VALUE)) + ); + + jPanel2.add(jPanel8, new org.netbeans.lib.awtextra.AbsoluteConstraints(595, 221, -1, -1)); + + jPanel9.setBackground(new java.awt.Color(255, 204, 204)); + jPanel9.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + jPanel9.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + jPanel9MouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + jPanel9MouseExited(evt); + } + }); + + jLabel10.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + jLabel10.setForeground(new java.awt.Color(255, 255, 255)); + jLabel10.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/search-document.png"))); // NOI18N + jLabel10.setText("Search Records"); + jLabel10.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + jLabel10MouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + jLabel10MouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + jLabel10MouseExited(evt); + } + }); + + javax.swing.GroupLayout jPanel9Layout = new javax.swing.GroupLayout(jPanel9); + jPanel9.setLayout(jPanel9Layout); + jPanel9Layout.setHorizontalGroup( + jPanel9Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel9Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jLabel10) + .addContainerGap(29, Short.MAX_VALUE)) + ); + jPanel9Layout.setVerticalGroup( + jPanel9Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel9Layout.createSequentialGroup() + .addGap(14, 14, 14) + .addComponent(jLabel10, javax.swing.GroupLayout.PREFERRED_SIZE, 99, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(23, Short.MAX_VALUE)) + ); + + jPanel2.add(jPanel9, new org.netbeans.lib.awtextra.AbsoluteConstraints(301, 20, -1, -1)); + + jPanel4.setBackground(new java.awt.Color(255, 204, 204)); + jPanel4.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + jPanel4.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + jPanel4MouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + jPanel4MouseExited(evt); + } + }); + + jLabel12.setFont(new java.awt.Font("Segoe UI", 1, 14)); // NOI18N + jLabel12.setForeground(new java.awt.Color(255, 255, 255)); + jLabel12.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/about.png"))); // NOI18N + jLabel12.setText("About"); + jLabel12.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + jLabel12MouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + jLabel12MouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + jLabel12MouseExited(evt); + } + }); + + javax.swing.GroupLayout jPanel4Layout = new javax.swing.GroupLayout(jPanel4); + jPanel4.setLayout(jPanel4Layout); + jPanel4Layout.setHorizontalGroup( + jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel4Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jLabel12, javax.swing.GroupLayout.DEFAULT_SIZE, 124, Short.MAX_VALUE) + .addContainerGap()) + ); + jPanel4Layout.setVerticalGroup( + jPanel4Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jLabel12, javax.swing.GroupLayout.PREFERRED_SIZE, 56, Short.MAX_VALUE) + ); + + jPanel2.add(jPanel4, new org.netbeans.lib.awtextra.AbsoluteConstraints(740, 400, 140, 60)); + + jPanel10.setBackground(new java.awt.Color(255, 204, 204)); + jPanel10.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + + jLabel13.setFont(new java.awt.Font("Segoe UI", 1, 14)); // NOI18N + jLabel13.setForeground(new java.awt.Color(255, 255, 255)); + jLabel13.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/exit.png"))); // NOI18N + jLabel13.setText("Logout"); + jLabel13.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + jLabel13MouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + jLabel13MouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + jLabel13MouseExited(evt); + } + }); + + javax.swing.GroupLayout jPanel10Layout = new javax.swing.GroupLayout(jPanel10); + jPanel10.setLayout(jPanel10Layout); + jPanel10Layout.setHorizontalGroup( + jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel10Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jLabel13, javax.swing.GroupLayout.PREFERRED_SIZE, 106, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(14, Short.MAX_VALUE)) + ); + jPanel10Layout.setVerticalGroup( + jPanel10Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel10Layout.createSequentialGroup() + .addComponent(jLabel13, javax.swing.GroupLayout.PREFERRED_SIZE, 58, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(0, 0, Short.MAX_VALUE)) + ); + + jPanel2.add(jPanel10, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 400, 130, 60)); + + getContentPane().add(jPanel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(6, 144, -1, 520)); + + pack(); + setLocationRelativeTo(null); + }// </editor-fold>//GEN-END:initComponents + + private void jPanel3MouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jPanel3MouseEntered + // TODO add your handling code here: + + + }//GEN-LAST:event_jPanel3MouseEntered + + private void jPanel3MouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jPanel3MouseExited + // TODO add your handling code here: + + }//GEN-LAST:event_jPanel3MouseExited + + private void jPanel5MouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jPanel5MouseEntered + // TODO add your handling code here: + + }//GEN-LAST:event_jPanel5MouseEntered + + private void jPanel5MouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jPanel5MouseExited + // TODO add your handling code here: + + }//GEN-LAST:event_jPanel5MouseExited + + private void jPanel6MouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jPanel6MouseEntered + // TODO add your handling code here: + + }//GEN-LAST:event_jPanel6MouseEntered + + private void jPanel6MouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jPanel6MouseExited + // TODO add your handling code here: + + }//GEN-LAST:event_jPanel6MouseExited + + private void jPanel7MouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jPanel7MouseEntered + // TODO add your handling code here: + Color clr=new Color(255,102,102); + jPanel7.setBackground(clr); + }//GEN-LAST:event_jPanel7MouseEntered + + private void jPanel7MouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jPanel7MouseExited + // TODO add your handling code here: + Color clr=new Color(255,204,204); + jPanel7.setBackground(clr); + }//GEN-LAST:event_jPanel7MouseExited + + private void jPanel8MouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jPanel8MouseEntered + // TODO add your handling code here: + + }//GEN-LAST:event_jPanel8MouseEntered + + private void jPanel8MouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jPanel8MouseExited + // TODO add your handling code here: + }//GEN-LAST:event_jPanel8MouseExited + + private void jPanel9MouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jPanel9MouseEntered + // TODO add your handling code here: + + }//GEN-LAST:event_jPanel9MouseEntered + + private void jPanel9MouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jPanel9MouseExited + // TODO add your handling code here: + }//GEN-LAST:event_jPanel9MouseExited + + private void jPanel4MouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jPanel4MouseEntered + // TODO add your handling code here: + + }//GEN-LAST:event_jPanel4MouseEntered + + private void jPanel4MouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jPanel4MouseExited + + }//GEN-LAST:event_jPanel4MouseExited + + private void jLabel5MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel5MouseClicked + + addFees addFees =new addFees(); + addFees.setVisible(true); + this.dispose(); + }//GEN-LAST:event_jLabel5MouseClicked + + private void jLabel10MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel10MouseClicked + SearchRecords search=new SearchRecords(); + search.setVisible(true); + this.dispose(); + }//GEN-LAST:event_jLabel10MouseClicked + + private void jLabel7MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel7MouseClicked + EditCourse edit=new EditCourse(); + edit.setVisible(true); + this.dispose(); + }//GEN-LAST:event_jLabel7MouseClicked + + private void jLabel6MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel6MouseClicked + ViewAllRecords allRecords=new ViewAllRecords(); + allRecords.setVisible(true); + this.dispose(); + }//GEN-LAST:event_jLabel6MouseClicked + + private void jLabel5MouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel5MouseEntered + Color clr=new Color(255,102,102); + jPanel3.setBackground(clr); + }//GEN-LAST:event_jLabel5MouseEntered + + private void jLabel5MouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel5MouseExited + Color clr=new Color(255,204,204); + jPanel3.setBackground(clr); + }//GEN-LAST:event_jLabel5MouseExited + + private void jLabel10MouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel10MouseEntered + Color clr=new Color(255,102,102); + jPanel9.setBackground(clr); + }//GEN-LAST:event_jLabel10MouseEntered + + private void jLabel10MouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel10MouseExited + Color clr=new Color(255,204,204); + jPanel9.setBackground(clr); + }//GEN-LAST:event_jLabel10MouseExited + + private void jLabel6MouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel6MouseEntered + Color clr=new Color(255,102,102); + jPanel5.setBackground(clr); + }//GEN-LAST:event_jLabel6MouseEntered + + private void jLabel6MouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel6MouseExited + Color clr=new Color(255,204,204); + jPanel5.setBackground(clr); + }//GEN-LAST:event_jLabel6MouseExited + + private void jLabel7MouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel7MouseEntered + Color clr=new Color(255,102,102); + jPanel6.setBackground(clr); + }//GEN-LAST:event_jLabel7MouseEntered + + private void jLabel7MouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel7MouseExited + Color clr=new Color(255,204,204); + jPanel6.setBackground(clr); + }//GEN-LAST:event_jLabel7MouseExited + + private void jLabel13MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel13MouseClicked + this.dispose(); + }//GEN-LAST:event_jLabel13MouseClicked + + private void jLabel13MouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel13MouseEntered + Color clr=new Color(255,102,102); + jPanel10.setBackground(clr); + }//GEN-LAST:event_jLabel13MouseEntered + + private void jLabel13MouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel13MouseExited + Color clr=new Color(255,204,204); + jPanel10.setBackground(clr); + }//GEN-LAST:event_jLabel13MouseExited + + private void jLabel9MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel9MouseClicked + GenerateReport report=new GenerateReport(); + report.setVisible(true); + this.dispose(); + }//GEN-LAST:event_jLabel9MouseClicked + + private void jLabel12MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel12MouseClicked + copyRightPage about=new copyRightPage(); + about.setVisible(true); + this.dispose(); + }//GEN-LAST:event_jLabel12MouseClicked + + private void jLabel12MouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel12MouseEntered + Color clr=new Color(255,102,102); + jPanel4.setBackground(clr); + }//GEN-LAST:event_jLabel12MouseEntered + + private void jLabel12MouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel12MouseExited + Color clr=new Color(255,204,204); + jPanel4.setBackground(clr); + }//GEN-LAST:event_jLabel12MouseExited + + private void jLabel9MouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel9MouseEntered + Color clr=new Color(255,102,102); + jPanel8.setBackground(clr); + }//GEN-LAST:event_jLabel9MouseEntered + + private void jLabel9MouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel9MouseExited + Color clr=new Color(255,204,204); + jPanel8.setBackground(clr); + }//GEN-LAST:event_jLabel9MouseExited + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + /* Set the Nimbus look and feel */ + //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "> + /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. + * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html + */ + try { + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + if ("Nimbus".equals(info.getName())) { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + } + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(HomePage.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(HomePage.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(HomePage.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(HomePage.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + //</editor-fold> + + /* Create and display the form */ + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new HomePage().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JLabel jLabel1; + private javax.swing.JLabel jLabel10; + private javax.swing.JLabel jLabel12; + private javax.swing.JLabel jLabel13; + private javax.swing.JLabel jLabel2; + private javax.swing.JLabel jLabel3; + private javax.swing.JLabel jLabel4; + private javax.swing.JLabel jLabel5; + private javax.swing.JLabel jLabel6; + private javax.swing.JLabel jLabel7; + private javax.swing.JLabel jLabel8; + private javax.swing.JLabel jLabel9; + private javax.swing.JPanel jPanel1; + private javax.swing.JPanel jPanel10; + private javax.swing.JPanel jPanel2; + private javax.swing.JPanel jPanel3; + private javax.swing.JPanel jPanel4; + private javax.swing.JPanel jPanel5; + private javax.swing.JPanel jPanel6; + private javax.swing.JPanel jPanel7; + private javax.swing.JPanel jPanel8; + private javax.swing.JPanel jPanel9; + // End of variables declaration//GEN-END:variables +} diff --git a/src/fees_management_system/Login.form b/src/fees_management_system/Login.form new file mode 100644 index 0000000..a93af24 --- /dev/null +++ b/src/fees_management_system/Login.form @@ -0,0 +1,243 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<Form version="1.3" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.JFrameFormInfo"> + <NonVisualComponents> + <Container class="javax.swing.JPanel" name="jPanel2"> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <EmptySpace min="0" pref="100" max="32767" attributes="0"/> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <EmptySpace min="0" pref="100" max="32767" attributes="0"/> + </Group> + </DimensionLayout> + </Layout> + </Container> + </NonVisualComponents> + <Properties> + <Property name="defaultCloseOperation" type="int" value="3"/> + </Properties> + <SyntheticProperties> + <SyntheticProperty name="formSizePolicy" type="int" value="1"/> + <SyntheticProperty name="generateCenter" type="boolean" value="true"/> + </SyntheticProperties> + <AuxValues> + <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/> + <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/> + <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/> + <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,1,-102,0,0,2,90"/> + </AuxValues> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="jPanel1"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="6" y="6" width="590" height="120"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel1"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="36" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="Login"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="268" y="27" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel3"> + <Properties> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/admin.png"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="190" y="17" width="72" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel3"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="6" y="121" width="590" height="284"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel2"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Enter User Name :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="93" y="72" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel4"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Enter Password :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="93" y="128" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtUserName"> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="txtUserNameActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="267" y="72" width="170" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JPasswordField" name="txtPassword"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="267" y="128" width="170" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JButton" name="txtSignUp"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="99" green="99" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/signup.png"/> + </Property> + <Property name="text" type="java.lang.String" value="SignUp"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="txtSignUpActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="238" y="227" width="-1" height="29"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JButton" name="txtLogin"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="99" green="99" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/login.png"/> + </Property> + <Property name="text" type="java.lang.String" value="Login"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="null"/> + </Property> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="txtLoginActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="117" y="226" width="103" height="30"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JButton" name="txtExit"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="99" green="99" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/exit.png"/> + </Property> + <Property name="text" type="java.lang.String" value="Exit"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="txtExitActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="365" y="227" width="-1" height="30"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="txtError"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="0" green="0" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="93" y="182" width="311" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + </SubComponents> +</Form> diff --git a/src/fees_management_system/Login.java b/src/fees_management_system/Login.java new file mode 100644 index 0000000..1dc92bc --- /dev/null +++ b/src/fees_management_system/Login.java @@ -0,0 +1,242 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to edit this template + */ +package fees_managment_syatem; + + +import java.sql.Statement; +import javax.swing.JOptionPane; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.ResultSet; + +/** + * + * @author yash + */ +public class Login extends javax.swing.JFrame { + + /** + * Creates new form Login + */ + public Login() { + initComponents(); + } + void userVerification(String userName, String password){ + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + String sql="select * from signUp where uname=? and password=?"; + PreparedStatement pst=con.prepareStatement(sql); + pst.setString(1,userName); + pst.setString(2,password); + ResultSet rs= pst.executeQuery(); + if(rs.next()){ + JOptionPane.showMessageDialog(this,"Login SuccessFull"); + HomePage HomePage = new HomePage(); + HomePage.show(); + this.dispose(); + } + else{ + JOptionPane.showMessageDialog(this,"Wrong UserName and Password"); + } + } + catch(Exception e){ + e.printStackTrace(); + } + } + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents + private void initComponents() { + + jPanel2 = new javax.swing.JPanel(); + jPanel1 = new javax.swing.JPanel(); + jLabel1 = new javax.swing.JLabel(); + jLabel3 = new javax.swing.JLabel(); + jPanel3 = new javax.swing.JPanel(); + jLabel2 = new javax.swing.JLabel(); + jLabel4 = new javax.swing.JLabel(); + txtUserName = new javax.swing.JTextField(); + txtPassword = new javax.swing.JPasswordField(); + txtSignUp = new javax.swing.JButton(); + txtLogin = new javax.swing.JButton(); + txtExit = new javax.swing.JButton(); + txtError = new javax.swing.JLabel(); + + javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2); + jPanel2.setLayout(jPanel2Layout); + jPanel2Layout.setHorizontalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGap(0, 100, Short.MAX_VALUE) + ); + jPanel2Layout.setVerticalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGap(0, 100, Short.MAX_VALUE) + ); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + jPanel1.setBackground(new java.awt.Color(255, 204, 204)); + jPanel1.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + jLabel1.setFont(new java.awt.Font("Times New Roman", 1, 36)); // NOI18N + jLabel1.setForeground(new java.awt.Color(255, 102, 102)); + jLabel1.setText("Login"); + jPanel1.add(jLabel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(268, 27, -1, -1)); + + jLabel3.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/admin.png"))); // NOI18N + jPanel1.add(jLabel3, new org.netbeans.lib.awtextra.AbsoluteConstraints(190, 17, 72, -1)); + + getContentPane().add(jPanel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(6, 6, 590, 120)); + + jPanel3.setBackground(new java.awt.Color(255, 102, 102)); + jPanel3.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + jLabel2.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + jLabel2.setText("Enter User Name :"); + jPanel3.add(jLabel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(93, 72, -1, -1)); + + jLabel4.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + jLabel4.setText("Enter Password :"); + jPanel3.add(jLabel4, new org.netbeans.lib.awtextra.AbsoluteConstraints(93, 128, -1, -1)); + + txtUserName.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + txtUserNameActionPerformed(evt); + } + }); + jPanel3.add(txtUserName, new org.netbeans.lib.awtextra.AbsoluteConstraints(267, 72, 170, -1)); + jPanel3.add(txtPassword, new org.netbeans.lib.awtextra.AbsoluteConstraints(267, 128, 170, -1)); + + txtSignUp.setBackground(new java.awt.Color(255, 204, 204)); + txtSignUp.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + txtSignUp.setForeground(new java.awt.Color(255, 153, 153)); + txtSignUp.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/signup.png"))); // NOI18N + txtSignUp.setText("SignUp"); + txtSignUp.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + txtSignUpActionPerformed(evt); + } + }); + jPanel3.add(txtSignUp, new org.netbeans.lib.awtextra.AbsoluteConstraints(238, 227, -1, 29)); + + txtLogin.setBackground(new java.awt.Color(255, 204, 204)); + txtLogin.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + txtLogin.setForeground(new java.awt.Color(255, 153, 153)); + txtLogin.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/login.png"))); // NOI18N + txtLogin.setText("Login"); + txtLogin.setBorder(null); + txtLogin.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + txtLoginActionPerformed(evt); + } + }); + jPanel3.add(txtLogin, new org.netbeans.lib.awtextra.AbsoluteConstraints(117, 226, 103, 30)); + + txtExit.setBackground(new java.awt.Color(255, 204, 204)); + txtExit.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + txtExit.setForeground(new java.awt.Color(255, 153, 153)); + txtExit.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/exit.png"))); // NOI18N + txtExit.setText("Exit"); + txtExit.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + txtExitActionPerformed(evt); + } + }); + jPanel3.add(txtExit, new org.netbeans.lib.awtextra.AbsoluteConstraints(365, 227, -1, 30)); + + txtError.setForeground(new java.awt.Color(255, 0, 0)); + jPanel3.add(txtError, new org.netbeans.lib.awtextra.AbsoluteConstraints(93, 182, 311, -1)); + + getContentPane().add(jPanel3, new org.netbeans.lib.awtextra.AbsoluteConstraints(6, 121, 590, 284)); + + pack(); + setLocationRelativeTo(null); + }// </editor-fold>//GEN-END:initComponents + + private void txtSignUpActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txtSignUpActionPerformed + // TODO add your handling code here: + Sign_Up_form signUp =new Sign_Up_form(); + signUp.show(); + this.dispose(); + }//GEN-LAST:event_txtSignUpActionPerformed + + private void txtLoginActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txtLoginActionPerformed + String username=txtUserName.getText(); + String password=txtPassword.getText(); + if(username.trim().equals("")||password.trim().equals("")){ + txtError.setText("Please Enter UserName and Password"); + } + else{ + userVerification(username,password); + } + }//GEN-LAST:event_txtLoginActionPerformed + + private void txtExitActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txtExitActionPerformed + // TODO add your handling code here: + System.exit(0); + }//GEN-LAST:event_txtExitActionPerformed + + private void txtUserNameActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txtUserNameActionPerformed + // TODO add your handling code here: + }//GEN-LAST:event_txtUserNameActionPerformed + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + /* Set the Nimbus look and feel */ + //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "> + /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. + * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html + */ + try { + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + if ("Nimbus".equals(info.getName())) { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + } + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(Login.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(Login.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(Login.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(Login.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + //</editor-fold> + + /* Create and display the form */ + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new Login().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JLabel jLabel1; + private javax.swing.JLabel jLabel2; + private javax.swing.JLabel jLabel3; + private javax.swing.JLabel jLabel4; + private javax.swing.JPanel jPanel1; + private javax.swing.JPanel jPanel2; + private javax.swing.JPanel jPanel3; + private javax.swing.JLabel txtError; + private javax.swing.JButton txtExit; + private javax.swing.JButton txtLogin; + private javax.swing.JPasswordField txtPassword; + private javax.swing.JButton txtSignUp; + private javax.swing.JTextField txtUserName; + // End of variables declaration//GEN-END:variables +} diff --git a/src/fees_management_system/NumberToWordsConverter.java b/src/fees_management_system/NumberToWordsConverter.java new file mode 100644 index 0000000..423c0ba --- /dev/null +++ b/src/fees_management_system/NumberToWordsConverter.java @@ -0,0 +1,67 @@ +package fees_managment_syatem; + + +import java.text.NumberFormat; +import java.util.Scanner; + +public class NumberToWordsConverter { + + public static final String[] units = { "", "One", "Two", "Three", "Four", + "Five", "Six", "Seven", "Eight", "Nine", "Ten", "Eleven", "Twelve", + "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen", + "Eighteen", "Nineteen" }; + + public static final String[] tens = { + "", // 0 + "", // 1 + "Twenty", // 2 + "Thirty", // 3 + "Forty", // 4 + "Fifty", // 5 + "Sixty", // 6 + "Seventy", // 7 + "Eighty", // 8 + "Ninety" // 9 + }; + + public static String convert(final int n) { + if (n < 0) + { + return "Minus " + convert(-n); + } + + if (n < 20) + { + return units[n]; + } + + if (n < 100) { + return tens[n / 10] + ((n % 10 != 0) ? " " : "") + units[n % 10]; + } + + if (n < 1000) { + return units[n / 100] + " Hundred" + ((n % 100 != 0) ? " " : "") + convert(n % 100); + } + + if (n < 100000) { + return convert(n / 1000) + " Thousand" + ((n % 10000 != 0) ? " " : "") + convert(n % 1000); + } + + if (n < 10000000) { + return convert(n / 100000) + " Lakh" + ((n % 100000 != 0) ? " " : "") + convert(n % 100000); + } + + return convert(n / 10000000) + " Crore" + ((n % 10000000 != 0) ? " " : "") + convert(n % 10000000); + } + + public static void main(final String[] args) { + Scanner sc=new Scanner(System.in); + System.out.println("Enter the Amount : "); + int n=sc.nextInt(); + + + System.out.println( convert(n)+ " Only"); + + + } +} \ No newline at end of file diff --git a/src/fees_management_system/SearchRecords.form b/src/fees_management_system/SearchRecords.form new file mode 100644 index 0000000..fe1290a --- /dev/null +++ b/src/fees_management_system/SearchRecords.form @@ -0,0 +1,522 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<Form version="1.5" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.JFrameFormInfo"> + <Properties> + <Property name="defaultCloseOperation" type="int" value="3"/> + </Properties> + <SyntheticProperties> + <SyntheticProperty name="formSizePolicy" type="int" value="1"/> + <SyntheticProperty name="generateCenter" type="boolean" value="true"/> + </SyntheticProperties> + <AuxValues> + <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/> + <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/> + <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/> + <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,2,-109,0,0,5,1"/> + </AuxValues> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="panelSideBar"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="0" width="430" height="860"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="panelLogOut"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="540" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnLogOut"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/exit.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Logout"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnLogOutMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnLogOutMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnLogOutMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="0" width="260" height="40"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelHome"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="60" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnHome"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/home.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" HOME"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnHomeMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnHomeMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnHomeMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="310" height="50"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelSearchRecords"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="140" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnSearchRecords"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/search2.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Search Records"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnSearchRecordsMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnSearchRecordsMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnSearchRecordsMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="310" height="60"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelEditCourse"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="24" style="1"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="220" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnEditCourse"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/edit2.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Edit Course"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditCourseMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditCourseMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditCourseMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelCourseList"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="300" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnCourseList"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/list.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Course List"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnCourseListMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnCourseListMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnCourseListMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="-10" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelViewAllRecords"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="380" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnViewAllRecords"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/view all record.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" View All Records"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnViewAllRecordsMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnViewAllRecordsMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnViewAllRecordsMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="0" width="320" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelBack"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="460" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnBack"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/left-arrow.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Back"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnBackMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnBackMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnBackMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="-10" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel1"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + </Properties> + <Events> + <EventHandler event="keyReleased" listener="java.awt.event.KeyListener" parameters="java.awt.event.KeyEvent" handler="jPanel1KeyReleased"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="430" y="0" width="850" height="660"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JScrollPane" name="jScrollPane1"> + <AuxValues> + <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/> + </AuxValues> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="140" width="800" height="500"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/> + <SubComponents> + <Component class="javax.swing.JTable" name="tblStudentData"> + <Properties> + <Property name="model" type="javax.swing.table.TableModel" editor="org.netbeans.modules.form.editors2.TableModelEditor"> + <Table columnCount="7" rowCount="0"> + <Column editable="true" title="ReceiptNo" type="java.lang.Object"/> + <Column editable="true" title="RollNo" type="java.lang.Object"/> + <Column editable="true" title="StudentName" type="java.lang.Object"/> + <Column editable="true" title="Course" type="java.lang.Object"/> + <Column editable="true" title="PaymentMode" type="java.lang.Object"/> + <Column editable="true" title="Amount" type="java.lang.Object"/> + <Column editable="true" title="Remark" type="java.lang.Object"/> + </Table> + </Property> + <Property name="columnModel" type="javax.swing.table.TableColumnModel" editor="org.netbeans.modules.form.editors2.TableColumnModelEditor"> + <TableColumnModel selectionModel="0"> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + </TableColumnModel> + </Property> + <Property name="tableHeader" type="javax.swing.table.JTableHeader" editor="org.netbeans.modules.form.editors2.JTableHeaderEditor"> + <TableHeader reorderingAllowed="true" resizingAllowed="true"/> + </Property> + </Properties> + </Component> + </SubComponents> + </Container> + <Component class="javax.swing.JLabel" name="jLabel1"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="b5" green="89" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="Search Records"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="370" y="10" width="170" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel2"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Enter Search String :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="60" y="70" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtSearchString"> + <Events> + <EventHandler event="keyReleased" listener="java.awt.event.KeyListener" parameters="java.awt.event.KeyEvent" handler="txtSearchStringKeyReleased"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="200" y="70" width="240" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="jTextField1"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="b5" green="89" red="0" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="340" y="40" width="220" height="6"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + </SubComponents> +</Form> diff --git a/src/fees_management_system/SearchRecords.java b/src/fees_management_system/SearchRecords.java new file mode 100644 index 0000000..dac04a7 --- /dev/null +++ b/src/fees_management_system/SearchRecords.java @@ -0,0 +1,493 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to edit this template + */ +package fees_managment_syatem; + +import java.awt.Color; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import javax.swing.RowFilter; +import javax.swing.table.DefaultTableModel; +import javax.swing.table.TableRowSorter; +/** + * + * @author yash + */ +public class SearchRecords extends javax.swing.JFrame { + + /** + * Creates new form SearchRecords + */ + DefaultTableModel model; + public SearchRecords() { + initComponents(); + setRecordsToTable(); + } +public void setRecordsToTable(){ + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + PreparedStatement pst=con.prepareStatement("select * from fees_details"); + ResultSet rs=pst.executeQuery(); + while(rs.next()){ + String ReceiptNo=rs.getString("recieptNo"); + String RollNo=rs.getString("rollNo"); + String StudentName=rs.getString("studentName"); + String Course=rs.getString("courseName"); + String PaymentMode=rs.getString("paymentMode"); + String Amount=rs.getString("totalAmount"); + String Remark=rs.getString("remark"); + Object[] obj={ReceiptNo,RollNo,StudentName,Course,PaymentMode,Amount,Remark}; + model=(DefaultTableModel)tblStudentData.getModel(); + model.addRow(obj); + } + }catch(Exception e){ + e.printStackTrace(); + } +} +public void search(String str){ + model=(DefaultTableModel)tblStudentData.getModel(); + TableRowSorter<DefaultTableModel> trs=new TableRowSorter<>(model); + tblStudentData.setRowSorter(trs); + trs.setRowFilter(RowFilter.regexFilter(str)); +} + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents + private void initComponents() { + + panelSideBar = new javax.swing.JPanel(); + panelLogOut = new javax.swing.JPanel(); + btnLogOut = new javax.swing.JLabel(); + panelHome = new javax.swing.JPanel(); + btnHome = new javax.swing.JLabel(); + panelSearchRecords = new javax.swing.JPanel(); + btnSearchRecords = new javax.swing.JLabel(); + panelEditCourse = new javax.swing.JPanel(); + btnEditCourse = new javax.swing.JLabel(); + panelCourseList = new javax.swing.JPanel(); + btnCourseList = new javax.swing.JLabel(); + panelViewAllRecords = new javax.swing.JPanel(); + btnViewAllRecords = new javax.swing.JLabel(); + panelBack = new javax.swing.JPanel(); + btnBack = new javax.swing.JLabel(); + jPanel1 = new javax.swing.JPanel(); + jScrollPane1 = new javax.swing.JScrollPane(); + tblStudentData = new javax.swing.JTable(); + jLabel1 = new javax.swing.JLabel(); + jLabel2 = new javax.swing.JLabel(); + txtSearchString = new javax.swing.JTextField(); + jTextField1 = new javax.swing.JTextField(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + panelSideBar.setBackground(new java.awt.Color(255, 102, 102)); + panelSideBar.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + panelLogOut.setBackground(new java.awt.Color(255, 102, 102)); + panelLogOut.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelLogOut.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnLogOut.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnLogOut.setForeground(new java.awt.Color(255, 255, 255)); + btnLogOut.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/exit.png"))); // NOI18N + btnLogOut.setText(" Logout"); + btnLogOut.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnLogOutMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnLogOutMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnLogOutMouseExited(evt); + } + }); + panelLogOut.add(btnLogOut, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 0, 260, 40)); + + panelSideBar.add(panelLogOut, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 540, 320, 50)); + + panelHome.setBackground(new java.awt.Color(255, 102, 102)); + panelHome.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelHome.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnHome.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnHome.setForeground(new java.awt.Color(255, 255, 255)); + btnHome.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/home.png"))); // NOI18N + btnHome.setText(" HOME"); + btnHome.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnHomeMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnHomeMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnHomeMouseExited(evt); + } + }); + panelHome.add(btnHome, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 310, 50)); + + panelSideBar.add(panelHome, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 60, 320, 50)); + + panelSearchRecords.setBackground(new java.awt.Color(255, 102, 102)); + panelSearchRecords.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelSearchRecords.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnSearchRecords.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnSearchRecords.setForeground(new java.awt.Color(255, 255, 255)); + btnSearchRecords.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/search2.png"))); // NOI18N + btnSearchRecords.setText(" Search Records"); + btnSearchRecords.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseExited(evt); + } + }); + panelSearchRecords.add(btnSearchRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 310, 60)); + + panelSideBar.add(panelSearchRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 140, 320, 50)); + + panelEditCourse.setBackground(new java.awt.Color(255, 102, 102)); + panelEditCourse.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelEditCourse.setFont(new java.awt.Font("Segoe UI", 1, 24)); // NOI18N + panelEditCourse.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnEditCourse.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnEditCourse.setForeground(new java.awt.Color(255, 255, 255)); + btnEditCourse.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/edit2.png"))); // NOI18N + btnEditCourse.setText(" Edit Course"); + btnEditCourse.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnEditCourseMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnEditCourseMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnEditCourseMouseExited(evt); + } + }); + panelEditCourse.add(btnEditCourse, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 260, -1)); + + panelSideBar.add(panelEditCourse, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 220, 320, 50)); + + panelCourseList.setBackground(new java.awt.Color(255, 102, 102)); + panelCourseList.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelCourseList.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnCourseList.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnCourseList.setForeground(new java.awt.Color(255, 255, 255)); + btnCourseList.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/list.png"))); // NOI18N + btnCourseList.setText(" Course List"); + btnCourseList.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnCourseListMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnCourseListMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnCourseListMouseExited(evt); + } + }); + panelCourseList.add(btnCourseList, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, -10, 260, -1)); + + panelSideBar.add(panelCourseList, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 300, 320, 50)); + + panelViewAllRecords.setBackground(new java.awt.Color(255, 102, 102)); + panelViewAllRecords.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelViewAllRecords.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnViewAllRecords.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnViewAllRecords.setForeground(new java.awt.Color(255, 255, 255)); + btnViewAllRecords.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/view all record.png"))); // NOI18N + btnViewAllRecords.setText(" View All Records"); + btnViewAllRecords.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseExited(evt); + } + }); + panelViewAllRecords.add(btnViewAllRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 320, -1)); + + panelSideBar.add(panelViewAllRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 380, 320, 50)); + + panelBack.setBackground(new java.awt.Color(255, 102, 102)); + panelBack.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelBack.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnBack.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnBack.setForeground(new java.awt.Color(255, 255, 255)); + btnBack.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/left-arrow.png"))); // NOI18N + btnBack.setText(" Back"); + btnBack.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnBackMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnBackMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnBackMouseExited(evt); + } + }); + panelBack.add(btnBack, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, -10, 260, -1)); + + panelSideBar.add(panelBack, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 460, 320, 50)); + + getContentPane().add(panelSideBar, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 430, 860)); + + jPanel1.setBackground(new java.awt.Color(255, 204, 204)); + jPanel1.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyReleased(java.awt.event.KeyEvent evt) { + jPanel1KeyReleased(evt); + } + }); + jPanel1.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + tblStudentData.setModel(new javax.swing.table.DefaultTableModel( + new Object [][] { + + }, + new String [] { + "ReceiptNo", "RollNo", "StudentName", "Course", "PaymentMode", "Amount", "Remark" + } + )); + jScrollPane1.setViewportView(tblStudentData); + + jPanel1.add(jScrollPane1, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 140, 800, 500)); + + jLabel1.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + jLabel1.setForeground(new java.awt.Color(0, 137, 181)); + jLabel1.setText("Search Records"); + jPanel1.add(jLabel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(370, 10, 170, -1)); + + jLabel2.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + jLabel2.setText("Enter Search String :"); + jPanel1.add(jLabel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(60, 70, -1, -1)); + + txtSearchString.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyReleased(java.awt.event.KeyEvent evt) { + txtSearchStringKeyReleased(evt); + } + }); + jPanel1.add(txtSearchString, new org.netbeans.lib.awtextra.AbsoluteConstraints(200, 70, 240, -1)); + + jTextField1.setBackground(new java.awt.Color(0, 137, 181)); + jPanel1.add(jTextField1, new org.netbeans.lib.awtextra.AbsoluteConstraints(340, 40, 220, 6)); + + getContentPane().add(jPanel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(430, 0, 850, 660)); + + pack(); + setLocationRelativeTo(null); + }// </editor-fold>//GEN-END:initComponents + + private void btnLogOutMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelLogOut.setBackground(clr); + }//GEN-LAST:event_btnLogOutMouseEntered + + private void btnLogOutMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelLogOut.setBackground(clr); + }//GEN-LAST:event_btnLogOutMouseExited + + private void btnHomeMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseEntered + Color clr=new Color(255,204,204); + panelHome.setBackground(clr); + }//GEN-LAST:event_btnHomeMouseEntered + + private void btnHomeMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelHome.setBackground(clr); + }//GEN-LAST:event_btnHomeMouseExited + + private void btnSearchRecordsMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelSearchRecords.setBackground(clr); + }//GEN-LAST:event_btnSearchRecordsMouseEntered + + private void btnSearchRecordsMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelSearchRecords.setBackground(clr); + }//GEN-LAST:event_btnSearchRecordsMouseExited + + private void btnEditCourseMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelEditCourse.setBackground(clr); + }//GEN-LAST:event_btnEditCourseMouseEntered + + private void btnEditCourseMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelEditCourse.setBackground(clr); + }//GEN-LAST:event_btnEditCourseMouseExited + + private void btnCourseListMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelCourseList.setBackground(clr); + }//GEN-LAST:event_btnCourseListMouseEntered + + private void btnCourseListMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelCourseList.setBackground(clr); + }//GEN-LAST:event_btnCourseListMouseExited + + private void btnViewAllRecordsMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelViewAllRecords.setBackground(clr); + }//GEN-LAST:event_btnViewAllRecordsMouseEntered + + private void btnViewAllRecordsMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelViewAllRecords.setBackground(clr); + }//GEN-LAST:event_btnViewAllRecordsMouseExited + + private void btnBackMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelBack.setBackground(clr); + }//GEN-LAST:event_btnBackMouseEntered + + private void btnBackMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelBack.setBackground(clr); + }//GEN-LAST:event_btnBackMouseExited + + private void jPanel1KeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_jPanel1KeyReleased + // TODO add your handling code here: + }//GEN-LAST:event_jPanel1KeyReleased + + private void txtSearchStringKeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txtSearchStringKeyReleased + String searchString=txtSearchString.getText(); + search(searchString); + }//GEN-LAST:event_txtSearchStringKeyReleased + + private void btnHomeMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseClicked + HomePage home=new HomePage(); + home.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnHomeMouseClicked + + private void btnSearchRecordsMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseClicked + SearchRecords records=new SearchRecords(); + records.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnSearchRecordsMouseClicked + + private void btnEditCourseMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseClicked +EditCourse edit=new EditCourse(); +edit.setVisible(true); +this.dispose(); + }//GEN-LAST:event_btnEditCourseMouseClicked + + private void btnCourseListMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseClicked + + }//GEN-LAST:event_btnCourseListMouseClicked + + private void btnViewAllRecordsMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseClicked + ViewAllRecords viewrecords=new ViewAllRecords(); + viewrecords.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnViewAllRecordsMouseClicked + + private void btnBackMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseClicked + HomePage home=new HomePage(); + home.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnBackMouseClicked + + private void btnLogOutMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseClicked + this.dispose(); + }//GEN-LAST:event_btnLogOutMouseClicked + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + /* Set the Nimbus look and feel */ + //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "> + /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. + * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html + */ + try { + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + if ("Nimbus".equals(info.getName())) { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + } + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(SearchRecords.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(SearchRecords.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(SearchRecords.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(SearchRecords.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + //</editor-fold> + + /* Create and display the form */ + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new SearchRecords().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JLabel btnBack; + private javax.swing.JLabel btnCourseList; + private javax.swing.JLabel btnEditCourse; + private javax.swing.JLabel btnHome; + private javax.swing.JLabel btnLogOut; + private javax.swing.JLabel btnSearchRecords; + private javax.swing.JLabel btnViewAllRecords; + private javax.swing.JLabel jLabel1; + private javax.swing.JLabel jLabel2; + private javax.swing.JPanel jPanel1; + private javax.swing.JScrollPane jScrollPane1; + private javax.swing.JTextField jTextField1; + private javax.swing.JPanel panelBack; + private javax.swing.JPanel panelCourseList; + private javax.swing.JPanel panelEditCourse; + private javax.swing.JPanel panelHome; + private javax.swing.JPanel panelLogOut; + private javax.swing.JPanel panelSearchRecords; + private javax.swing.JPanel panelSideBar; + private javax.swing.JPanel panelViewAllRecords; + private javax.swing.JTable tblStudentData; + private javax.swing.JTextField txtSearchString; + // End of variables declaration//GEN-END:variables +} diff --git a/src/fees_management_system/Sign_Up_form.form b/src/fees_management_system/Sign_Up_form.form new file mode 100644 index 0000000..641bc02 --- /dev/null +++ b/src/fees_management_system/Sign_Up_form.form @@ -0,0 +1,396 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<Form version="1.3" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.JFrameFormInfo"> + <NonVisualComponents> + <Component class="javax.swing.JLabel" name="jLabel3"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Last Name :"/> + </Properties> + </Component> + <Component class="javax.swing.ButtonGroup" name="gendergroup"> + </Component> + </NonVisualComponents> + <Properties> + <Property name="defaultCloseOperation" type="int" value="3"/> + </Properties> + <SyntheticProperties> + <SyntheticProperty name="formSizePolicy" type="int" value="1"/> + <SyntheticProperty name="generateCenter" type="boolean" value="true"/> + </SyntheticProperties> + <AuxValues> + <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/> + <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/> + <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/> + </AuxValues> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="jPanel1" max="32767" attributes="0"/> + <Component id="jPanel2" alignment="1" max="32767" attributes="0"/> + </Group> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <Component id="jPanel1" min="-2" max="-2" attributes="0"/> + <EmptySpace max="32767" attributes="0"/> + <Component id="jPanel2" min="-2" max="-2" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="jPanel1"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.LineBorderInfo"> + <LineBorder> + <Color PropertyName="color" blue="0" green="ff" red="33" type="rgb"/> + </LineBorder> + </Border> + </Property> + </Properties> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="jSeparator1" alignment="1" pref="708" max="32767" attributes="0"/> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace min="-2" pref="234" max="-2" attributes="0"/> + <Component id="jLabel1" min="-2" pref="169" max="-2" attributes="0"/> + <EmptySpace max="32767" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="1" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel1" pref="40" max="32767" attributes="0"/> + <EmptySpace max="-2" attributes="0"/> + <Component id="jSeparator1" min="-2" max="-2" attributes="0"/> + <EmptySpace min="-2" pref="10" max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel1"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value=" Sign Up"/> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.LineBorderInfo"> + <LineBorder> + <Color PropertyName="color" blue="0" green="ff" red="0" type="rgb"/> + </LineBorder> + </Border> + </Property> + </Properties> + <AuxValues> + <AuxValue name="JavaCodeGenerator_SerializeTo" type="java.lang.String" value="Sign_Up_form_jLabel1"/> + </AuxValues> + </Component> + <Component class="javax.swing.JSeparator" name="jSeparator1"> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel2"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="99" green="99" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.LineBorderInfo"> + <LineBorder> + <Color PropertyName="color" blue="0" green="ff" red="66" type="rgb"/> + </LineBorder> + </Border> + </Property> + </Properties> + + <Layout> + <DimensionLayout dim="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="1" attributes="0"> + <EmptySpace max="32767" attributes="0"/> + <Component id="jLabel8" min="-2" max="-2" attributes="0"/> + </Group> + <Group type="102" attributes="0"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <EmptySpace min="-2" pref="29" max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="jLabel2" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="jLabel5" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="jLabel4" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="jLabel9" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="jLabel6" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="jLabel7" alignment="0" min="-2" max="-2" attributes="0"/> + <Component id="jLabel11" alignment="0" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace min="-2" pref="30" max="-2" attributes="0"/> + </Group> + <Group type="102" alignment="1" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="btn_signUp" min="-2" max="-2" attributes="0"/> + <EmptySpace min="-2" pref="2" max="-2" attributes="0"/> + </Group> + </Group> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <EmptySpace min="-2" pref="62" max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="103" alignment="0" groupAlignment="1" max="-2" attributes="0"> + <Component id="txt_dob" alignment="0" pref="180" max="32767" attributes="0"/> + <Component id="txt_password" alignment="0" max="32767" attributes="0"/> + <Component id="txt_userName" alignment="0" max="32767" attributes="0"/> + <Component id="txt_lastName" alignment="0" max="32767" attributes="0"/> + <Component id="txt_firstName" alignment="0" max="32767" attributes="0"/> + <Component id="txt_confirmPassword" alignment="0" max="32767" attributes="0"/> + </Group> + <Component id="txt_contactNo" alignment="0" min="-2" pref="180" max="-2" attributes="0"/> + </Group> + <EmptySpace min="-2" pref="42" max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Component id="txt_password_error" pref="202" max="32767" attributes="0"/> + <Component id="txt_number_error" max="32767" attributes="0"/> + </Group> + </Group> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace min="-2" pref="54" max="-2" attributes="0"/> + <Component id="btn_login" min="-2" max="-2" attributes="0"/> + <EmptySpace min="0" pref="0" max="32767" attributes="0"/> + </Group> + </Group> + </Group> + </Group> + <EmptySpace max="-2" attributes="0"/> + </Group> + </Group> + </DimensionLayout> + <DimensionLayout dim="1"> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" alignment="0" attributes="0"> + <EmptySpace max="-2" attributes="0"/> + <Component id="jLabel8" min="-2" max="-2" attributes="0"/> + <Group type="103" groupAlignment="0" attributes="0"> + <Group type="102" attributes="0"> + <EmptySpace min="-2" pref="24" max="-2" attributes="0"/> + <Group type="103" groupAlignment="1" attributes="0"> + <Group type="102" attributes="0"> + <Group type="103" groupAlignment="1" attributes="0"> + <Group type="102" attributes="0"> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="jLabel2" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="txt_firstName" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace type="separate" max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="jLabel5" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="txt_lastName" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace type="separate" max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="jLabel4" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="txt_userName" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace type="separate" max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="jLabel9" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="txt_password" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="txt_password_error" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace type="separate" max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="jLabel6" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="txt_confirmPassword" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace type="separate" max="-2" attributes="0"/> + <Component id="jLabel7" min="-2" max="-2" attributes="0"/> + </Group> + <Component id="txt_dob" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace type="separate" max="-2" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="jLabel11" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="txt_contactNo" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace min="-2" pref="9" max="-2" attributes="0"/> + </Group> + <Component id="txt_number_error" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace min="22" pref="107" max="32767" attributes="0"/> + </Group> + <Group type="102" alignment="1" attributes="0"> + <EmptySpace max="32767" attributes="0"/> + <Group type="103" groupAlignment="3" attributes="0"> + <Component id="btn_signUp" alignment="3" min="-2" max="-2" attributes="0"/> + <Component id="btn_login" alignment="3" min="-2" max="-2" attributes="0"/> + </Group> + <EmptySpace min="-2" pref="32" max="-2" attributes="0"/> + </Group> + </Group> + </Group> + </Group> + </DimensionLayout> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel2"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="First Name :"/> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="jLabel4"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Username :"/> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="jLabel5"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Last Name :"/> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="jLabel6"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Confirm Password :"/> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="jLabel8"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="jLabel9"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Password :"/> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="jLabel7"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Date Of Birth :"/> + </Properties> + </Component> + <Component class="com.toedter.calendar.JDateChooser" name="txt_dob"> + </Component> + <Component class="javax.swing.JTextField" name="txt_firstName"> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="txt_firstNameActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JTextField" name="txt_lastName"> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="txt_lastNameActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JTextField" name="txt_userName"> + </Component> + <Component class="javax.swing.JPasswordField" name="txt_password"> + <Events> + <EventHandler event="keyPressed" listener="java.awt.event.KeyListener" parameters="java.awt.event.KeyEvent" handler="txt_passwordKeyPressed"/> + <EventHandler event="keyReleased" listener="java.awt.event.KeyListener" parameters="java.awt.event.KeyEvent" handler="txt_passwordKeyReleased"/> + <EventHandler event="keyTyped" listener="java.awt.event.KeyListener" parameters="java.awt.event.KeyEvent" handler="txt_passwordKeyTyped"/> + </Events> + </Component> + <Component class="javax.swing.JPasswordField" name="txt_confirmPassword"> + </Component> + <Component class="javax.swing.JButton" name="btn_signUp"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="SignUp"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btn_signUpActionPerformed"/> + </Events> + </Component> + <Component class="javax.swing.JButton" name="btn_login"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Login"/> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="jLabel11"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Contact No:"/> + </Properties> + </Component> + <Component class="javax.swing.JTextField" name="txt_contactNo"> + <Events> + <EventHandler event="keyPressed" listener="java.awt.event.KeyListener" parameters="java.awt.event.KeyEvent" handler="txt_contactNoKeyPressed"/> + <EventHandler event="keyReleased" listener="java.awt.event.KeyListener" parameters="java.awt.event.KeyEvent" handler="txt_contactNoKeyReleased"/> + <EventHandler event="keyTyped" listener="java.awt.event.KeyListener" parameters="java.awt.event.KeyEvent" handler="txt_contactNoKeyTyped"/> + </Events> + </Component> + <Component class="javax.swing.JLabel" name="txt_password_error"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="0" red="ff" type="rgb"/> + </Property> + </Properties> + </Component> + <Component class="javax.swing.JLabel" name="txt_number_error"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="14" style="0"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="0" green="0" red="ff" type="rgb"/> + </Property> + <Property name="verticalAlignment" type="int" value="1"/> + </Properties> + </Component> + </SubComponents> + </Container> + </SubComponents> +</Form> diff --git a/src/fees_management_system/Sign_Up_form.java b/src/fees_management_system/Sign_Up_form.java new file mode 100644 index 0000000..8e3fabb --- /dev/null +++ b/src/fees_management_system/Sign_Up_form.java @@ -0,0 +1,515 @@ +package fees_managment_syatem; + + +import java.util.Date; +import javax.swing.JOptionPane; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.text.SimpleDateFormat; +import java.sql.Statement; + +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to edit this template + */ + +/** + * + * @author y + */ +public class Sign_Up_form extends javax.swing.JFrame { + + /** + * Creates new form Sign_Up_form + */ + String fname,lname,usname,password,com_password,contNo; + Date dob; + int id=0; + public Sign_Up_form() { + initComponents(); + } + public int getId(){ + ResultSet rs=null; + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + String sql="select max(id) from SIGNUP"; + Statement st=con.createStatement(); + rs=st.executeQuery(sql); + while(rs.next()){ + id=rs.getInt(1); + ++id; + } + } + catch(Exception e){ + e.printStackTrace(); + } + return id; + } + boolean validation(){ + + fname=txt_firstName.getText(); + lname=txt_lastName.getText(); + usname=txt_userName.getText(); + password=txt_password.getText(); + com_password=txt_confirmPassword.getText(); + contNo=txt_contactNo.getText(); + dob=txt_dob.getDate(); + if(fname.equals("")){ + JOptionPane.showMessageDialog(this,"Please Enter First Name."); + return false; + } + if(lname.equals("")){ + JOptionPane.showMessageDialog(this, "Please Enter Last Name."); + return false; + } + if(usname.equals("")){ + JOptionPane.showMessageDialog(this,"Please Enter UserName."); + return false; + } + if(password.equals("")){ + JOptionPane.showMessageDialog(this, "Please Enter Password."); + return false; + } + if(com_password.equals("")){ + JOptionPane.showMessageDialog(this,"Please Enter Confirm Password."); + return false; + } + if(contNo.equals("")){ + JOptionPane.showMessageDialog(this,"Please Enter Contact No."); + return false; + } + if(dob == null){ + JOptionPane.showMessageDialog(this,"Pleaase Enter Date Of Birth"); + return false; + } + if(password.length()<8){ + txt_password_error.setText("Password should be of 8 charachter"); + } + if(contNo.length()<10){ + txt_number_error.setText("Number should be of 10 digits "); + } + if(!(password.equals(com_password))){ + JOptionPane.showMessageDialog(this, "Password Not Match."); + } + + return true; + } + public void checkPassword() + { + password=txt_password.getText(); + if(password.length()<8){ + txt_password_error.setText("Password should be of 8 charachter"); + } + else{ + txt_password_error.setText(""); + } + } + public void checkContactNo(){ + contNo=txt_contactNo.getText(); + if(contNo.length()==10){ + txt_number_error.setText(""); + } + else{ + txt_number_error.setText("Number should be of 10 digits"); + } + } + void insertDetails(){ + SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd"); + String mydob=format.format(dob); + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + String sql="insert into signUp values(?,?,?,?,?,?,?)"; + PreparedStatement stmt=con.prepareStatement(sql); + stmt.setInt(1,getId()); + stmt.setString(2, fname); + stmt.setString(3,lname); + stmt.setString(4,usname); + stmt.setString(5, password); + stmt.setString(6,mydob); + stmt.setString(7,contNo); + int i=stmt.executeUpdate(); + if(i>0){ + JOptionPane.showMessageDialog(this,"Record Succesfully Inserted"); + } + else{ + JOptionPane.showMessageDialog(this,"Records Not Inserted"); + } + } + catch(Exception e){ + e.printStackTrace(); + } + } + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents + private void initComponents() { + + jLabel3 = new javax.swing.JLabel(); + gendergroup = new javax.swing.ButtonGroup(); + jPanel1 = new javax.swing.JPanel(); + jLabel1 = new javax.swing.JLabel(); + jSeparator1 = new javax.swing.JSeparator(); + jPanel2 = new javax.swing.JPanel(); + jLabel2 = new javax.swing.JLabel(); + jLabel4 = new javax.swing.JLabel(); + jLabel5 = new javax.swing.JLabel(); + jLabel6 = new javax.swing.JLabel(); + jLabel8 = new javax.swing.JLabel(); + jLabel9 = new javax.swing.JLabel(); + jLabel7 = new javax.swing.JLabel(); + txt_dob = new com.toedter.calendar.JDateChooser(); + txt_firstName = new javax.swing.JTextField(); + txt_lastName = new javax.swing.JTextField(); + txt_userName = new javax.swing.JTextField(); + txt_password = new javax.swing.JPasswordField(); + txt_confirmPassword = new javax.swing.JPasswordField(); + btn_signUp = new javax.swing.JButton(); + btn_login = new javax.swing.JButton(); + jLabel11 = new javax.swing.JLabel(); + txt_contactNo = new javax.swing.JTextField(); + txt_password_error = new javax.swing.JLabel(); + txt_number_error = new javax.swing.JLabel(); + + jLabel3.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + jLabel3.setText("Last Name :"); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + + jPanel1.setBackground(new java.awt.Color(255, 204, 204)); + jPanel1.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(51, 255, 0))); + + jLabel1.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + jLabel1.setText(" Sign Up"); + jLabel1.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 255, 0))); + + javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); + jPanel1.setLayout(jPanel1Layout); + jPanel1Layout.setHorizontalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jSeparator1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 708, Short.MAX_VALUE) + .addGroup(jPanel1Layout.createSequentialGroup() + .addGap(234, 234, 234) + .addComponent(jLabel1, javax.swing.GroupLayout.PREFERRED_SIZE, 169, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + ); + jPanel1Layout.setVerticalGroup( + jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jLabel1, javax.swing.GroupLayout.DEFAULT_SIZE, 40, Short.MAX_VALUE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(10, 10, 10)) + ); + + jPanel2.setBackground(new java.awt.Color(255, 153, 153)); + jPanel2.setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(102, 255, 0))); + + jLabel2.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + jLabel2.setText("First Name :"); + + jLabel4.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + jLabel4.setText("Username :"); + + jLabel5.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + jLabel5.setText("Last Name :"); + + jLabel6.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + jLabel6.setText("Confirm Password :"); + + jLabel8.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + + jLabel9.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + jLabel9.setText("Password :"); + + jLabel7.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + jLabel7.setText("Date Of Birth :"); + + txt_firstName.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + txt_firstNameActionPerformed(evt); + } + }); + + txt_lastName.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + txt_lastNameActionPerformed(evt); + } + }); + + txt_password.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyPressed(java.awt.event.KeyEvent evt) { + txt_passwordKeyPressed(evt); + } + public void keyReleased(java.awt.event.KeyEvent evt) { + txt_passwordKeyReleased(evt); + } + public void keyTyped(java.awt.event.KeyEvent evt) { + txt_passwordKeyTyped(evt); + } + }); + + btn_signUp.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + btn_signUp.setText("SignUp"); + btn_signUp.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + btn_signUpActionPerformed(evt); + } + }); + + btn_login.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + btn_login.setText("Login"); + + jLabel11.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + jLabel11.setText("Contact No:"); + + txt_contactNo.addKeyListener(new java.awt.event.KeyAdapter() { + public void keyPressed(java.awt.event.KeyEvent evt) { + txt_contactNoKeyPressed(evt); + } + public void keyReleased(java.awt.event.KeyEvent evt) { + txt_contactNoKeyReleased(evt); + } + public void keyTyped(java.awt.event.KeyEvent evt) { + txt_contactNoKeyTyped(evt); + } + }); + + txt_password_error.setForeground(new java.awt.Color(255, 0, 51)); + + txt_number_error.setFont(new java.awt.Font("Segoe UI", 0, 14)); // NOI18N + txt_number_error.setForeground(new java.awt.Color(255, 0, 0)); + txt_number_error.setVerticalAlignment(javax.swing.SwingConstants.TOP); + + javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2); + jPanel2.setLayout(jPanel2Layout); + jPanel2Layout.setHorizontalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup() + .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(jLabel8)) + .addGroup(jPanel2Layout.createSequentialGroup() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addGap(29, 29, 29) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jLabel2) + .addComponent(jLabel5) + .addComponent(jLabel4) + .addComponent(jLabel9) + .addComponent(jLabel6) + .addComponent(jLabel7) + .addComponent(jLabel11)) + .addGap(30, 30, 30)) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup() + .addContainerGap() + .addComponent(btn_signUp) + .addGap(2, 2, 2))) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addGap(62, 62, 62) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false) + .addComponent(txt_dob, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 180, Short.MAX_VALUE) + .addComponent(txt_password, javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(txt_userName, javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(txt_lastName, javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(txt_firstName, javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(txt_confirmPassword, javax.swing.GroupLayout.Alignment.LEADING)) + .addComponent(txt_contactNo, javax.swing.GroupLayout.PREFERRED_SIZE, 180, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(42, 42, 42) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(txt_password_error, javax.swing.GroupLayout.DEFAULT_SIZE, 202, Short.MAX_VALUE) + .addComponent(txt_number_error, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))) + .addGroup(jPanel2Layout.createSequentialGroup() + .addGap(54, 54, 54) + .addComponent(btn_login) + .addGap(0, 0, Short.MAX_VALUE))))) + .addContainerGap()) + ); + jPanel2Layout.setVerticalGroup( + jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addContainerGap() + .addComponent(jLabel8) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addGap(24, 24, 24) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) + .addGroup(jPanel2Layout.createSequentialGroup() + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel2) + .addComponent(txt_firstName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel5) + .addComponent(txt_lastName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel4) + .addComponent(txt_userName, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel9) + .addComponent(txt_password, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(txt_password_error)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel6) + .addComponent(txt_confirmPassword, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(18, 18, 18) + .addComponent(jLabel7)) + .addComponent(txt_dob, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(18, 18, 18) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(jLabel11) + .addComponent(txt_contactNo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) + .addGap(9, 9, 9)) + .addComponent(txt_number_error)) + .addGap(22, 107, Short.MAX_VALUE)) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup() + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(btn_signUp) + .addComponent(btn_login)) + .addGap(32, 32, 32)))) + ); + + javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); + getContentPane().setLayout(layout); + layout.setHorizontalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addContainerGap() + .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(jPanel2, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addContainerGap()) + ); + layout.setVerticalGroup( + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap()) + ); + + pack(); + setLocationRelativeTo(null); + }// </editor-fold>//GEN-END:initComponents + + private void txt_lastNameActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txt_lastNameActionPerformed + // TODO add your handling code here: + }//GEN-LAST:event_txt_lastNameActionPerformed + + private void txt_firstNameActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txt_firstNameActionPerformed + // TODO add your handling code here: + }//GEN-LAST:event_txt_firstNameActionPerformed + + private void btn_signUpActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btn_signUpActionPerformed + // TODO add your handling code here: + if(validation()){ + insertDetails(); + } + }//GEN-LAST:event_btn_signUpActionPerformed + + private void txt_passwordKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_passwordKeyPressed +checkPassword(); // TODO add your handling code here: + }//GEN-LAST:event_txt_passwordKeyPressed + + private void txt_passwordKeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_passwordKeyReleased +checkPassword(); // TODO add your handling code here: + }//GEN-LAST:event_txt_passwordKeyReleased + + private void txt_passwordKeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_passwordKeyTyped +checkPassword(); // TODO add your handling code here: + }//GEN-LAST:event_txt_passwordKeyTyped + + private void txt_contactNoKeyPressed(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_contactNoKeyPressed +checkContactNo(); // TODO add your handling code here: + }//GEN-LAST:event_txt_contactNoKeyPressed + + private void txt_contactNoKeyReleased(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_contactNoKeyReleased +checkContactNo(); // TODO add your handling code here: + }//GEN-LAST:event_txt_contactNoKeyReleased + + private void txt_contactNoKeyTyped(java.awt.event.KeyEvent evt) {//GEN-FIRST:event_txt_contactNoKeyTyped +checkContactNo(); // TODO add your handling code here: + }//GEN-LAST:event_txt_contactNoKeyTyped + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + /* Set the Nimbus look and feel */ + //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "> + /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. + * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html + */ + try { + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + if ("Nimbus".equals(info.getName())) { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + } + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(Sign_Up_form.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(Sign_Up_form.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(Sign_Up_form.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(Sign_Up_form.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + //</editor-fold> + + /* Create and display the form */ + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new Sign_Up_form().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JButton btn_login; + private javax.swing.JButton btn_signUp; + private javax.swing.ButtonGroup gendergroup; + private javax.swing.JLabel jLabel1; + private javax.swing.JLabel jLabel11; + private javax.swing.JLabel jLabel2; + private javax.swing.JLabel jLabel3; + private javax.swing.JLabel jLabel4; + private javax.swing.JLabel jLabel5; + private javax.swing.JLabel jLabel6; + private javax.swing.JLabel jLabel7; + private javax.swing.JLabel jLabel8; + private javax.swing.JLabel jLabel9; + private javax.swing.JPanel jPanel1; + private javax.swing.JPanel jPanel2; + private javax.swing.JSeparator jSeparator1; + private javax.swing.JPasswordField txt_confirmPassword; + private javax.swing.JTextField txt_contactNo; + private com.toedter.calendar.JDateChooser txt_dob; + private javax.swing.JTextField txt_firstName; + private javax.swing.JTextField txt_lastName; + private javax.swing.JLabel txt_number_error; + private javax.swing.JPasswordField txt_password; + private javax.swing.JLabel txt_password_error; + private javax.swing.JTextField txt_userName; + // End of variables declaration//GEN-END:variables +} diff --git a/src/fees_management_system/UpdateFeesDetails.form b/src/fees_management_system/UpdateFeesDetails.form new file mode 100644 index 0000000..98870dd --- /dev/null +++ b/src/fees_management_system/UpdateFeesDetails.form @@ -0,0 +1,954 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<Form version="1.3" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.JFrameFormInfo"> + <Properties> + <Property name="defaultCloseOperation" type="int" value="3"/> + </Properties> + <SyntheticProperties> + <SyntheticProperty name="formSizePolicy" type="int" value="1"/> + <SyntheticProperty name="generateCenter" type="boolean" value="true"/> + </SyntheticProperties> + <AuxValues> + <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/> + <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/> + <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/> + <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,2,50,0,0,5,24"/> + </AuxValues> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="panelSideBar"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="0" width="430" height="1040"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="panelLogOut"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="540" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnLogOut"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/logout.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Logout"/> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnLogOutMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnLogOutMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="-10" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelHome"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="60" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnHome"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/home.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" HOME"/> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnHomeMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnHomeMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="310" height="50"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelSearchRecords"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="140" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnSearchRecords"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/search2.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Search Records"/> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnSearchRecordsMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnSearchRecordsMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="310" height="60"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelEditCourse"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="24" style="1"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="220" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnEditCourse"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/edit2.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Edit Course"/> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditCourseMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditCourseMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelCourseList"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="300" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnCourseList"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/list.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Course List"/> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnCourseListMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnCourseListMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="-10" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelViewAllRecords"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="380" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnViewAllRecords"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/view all record.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" View All Records"/> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnViewAllRecordsMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnViewAllRecordsMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="0" width="320" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelBack"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="460" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnBack"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/left-arrow.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Back"/> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnBackMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnBackMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="-10" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelParent"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="430" y="0" width="1420" height="1040"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="lblChequeNo"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Cheque No :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="70" y="80" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblReceiptNo"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Receipt no : MLV-"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="20" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblDdNo"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="DD no :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="100" y="80" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblModeOfPayment"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value=" Mode of payment : "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="50" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="txtGSTNo"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value=" sffsfe22"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="630" y="50" width="70" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblDate"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value=" Date : "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="570" y="20" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtReceiptNo"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="160" y="20" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtChequeNo"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="160" y="80" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="com.toedter.calendar.JDateChooser" name="DateChosser"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="620" y="20" width="140" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Container class="javax.swing.JPanel" name="panelChild"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="140" width="870" height="900"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="lblPaymentCollage"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="the following paymemnts the collage office for the year "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="50" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblTo"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="to"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="460" y="50" width="20" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtLastDate"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="490" y="50" width="80" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblAmount"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Amount"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="700" y="130" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtFirstDate"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="360" y="50" width="90" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblReceiverSignature"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Receiver signature"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="710" y="340" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblRecievedFrom"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Recieved From :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="20" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JSeparator" name="jSeparator1"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="150" width="820" height="10"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JSeparator" name="jSeparator2"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="120" width="820" height="10"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblCourse"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Course :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="80" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblRemark"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Remark :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="380" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblSgst"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="SGST 9% "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="300" y="220" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtSumTotal"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="660" y="260" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtTotalInWords"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="130" y="310" width="410" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtCgst"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="660" y="190" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtAmountFirst"> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="txtAmountFirstActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="660" y="160" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JSeparator" name="jSeparator3"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="650" y="250" width="180" height="10"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtSgst"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="660" y="220" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblSrNo"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Sr No "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="130" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtHead"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="130" y="20" width="400" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Container class="javax.swing.JScrollPane" name="jScrollPane1"> + <AuxValues> + <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/> + </AuxValues> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="130" y="360" width="410" height="90"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/> + <SubComponents> + <Component class="javax.swing.JTextPane" name="textPaneRemark"> + </Component> + </SubComponents> + </Container> + <Component class="javax.swing.JLabel" name="lblTotalInWords"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Total in words : "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="310" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JSeparator" name="jSeparator4"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="650" y="330" width="190" height="20"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel18"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Roll No :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="610" y="80" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JButton" name="btnPrint"> + <Properties> + <Property name="text" type="java.lang.String" value="Print"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnPrintActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="720" y="430" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblHead"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Head "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="300" y="130" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblCgst"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="CGST 9%"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="300" y="190" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JComboBox" name="comboBoxCourse1"> + <Properties> + <Property name="model" type="javax.swing.ComboBoxModel" editor="org.netbeans.modules.form.editors2.ComboBoxModelEditor"> + <StringArray count="0"/> + </Property> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="comboBoxCourse1ActionPerformed"/> + </Events> + <AuxValues> + <AuxValue name="JavaCodeGenerator_TypeParameters" type="java.lang.String" value="<String>"/> + </AuxValues> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="130" y="80" width="350" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtHead1"> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="txtHead1ActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="130" y="160" width="400" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtRollNo"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="660" y="80" width="90" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Component class="javax.swing.JTextField" name="txtDDNo"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="160" y="80" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JComboBox" name="comboBoxPayment"> + <Properties> + <Property name="model" type="javax.swing.ComboBoxModel" editor="org.netbeans.modules.form.editors2.ComboBoxModelEditor"> + <StringArray count="4"> + <StringItem index="0" value="DD"/> + <StringItem index="1" value="Cheque"/> + <StringItem index="2" value="Cash"/> + <StringItem index="3" value="Card"/> + </StringArray> + </Property> + <Property name="selectedIndex" type="int" value="2"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="comboBoxPaymentActionPerformed"/> + </Events> + <AuxValues> + <AuxValue name="JavaCodeGenerator_TypeParameters" type="java.lang.String" value="<String>"/> + </AuxValues> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="160" y="50" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtBankName1"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="160" y="110" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblBankName1"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Bank Name : "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="70" y="110" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblGSTNo1"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value=" GSTIN: "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="570" y="50" width="60" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + </SubComponents> +</Form> diff --git a/src/fees_management_system/UpdateFeesDetails.java b/src/fees_management_system/UpdateFeesDetails.java new file mode 100644 index 0000000..9270b2c --- /dev/null +++ b/src/fees_management_system/UpdateFeesDetails.java @@ -0,0 +1,848 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to edit this template + */ +package fees_managment_syatem; + +import java.awt.Color; +import java.sql.Connection; +import java.sql.DriverManager; +import javax.swing.JOptionPane; +import java.sql.ResultSet; +import java.sql.PreparedStatement; +import java.text.SimpleDateFormat; + +/** + * + * @author yash + */ +public class UpdateFeesDetails extends javax.swing.JFrame { + + /** + * Creates new form addFees + */ + public UpdateFeesDetails() { + initComponents(); + displayCashFirst(); + fillComboBox(); + int receipt_no=getReceiptNo(); + txtReceiptNo.setText(Integer.toString(receipt_no)); + setRecords(); + } + public void displayCashFirst(){ + lblDdNo.setVisible(false); + lblChequeNo.setVisible(false); + txtChequeNo.setVisible(false); + txtDDNo.setVisible(false); + lblBankName1.setVisible(false); + txtBankName1.setVisible(false); + + } + public boolean validation(){ + if(txtHead.getText().equals("")){ + JOptionPane.showMessageDialog(this,"please enter user name."); + return false; + } + if(DateChosser.getDate() == null){ + JOptionPane.showMessageDialog(this, "please select a date."); + return false; + } + if(txtAmountFirst.getText().equals("")){ + JOptionPane.showMessageDialog(this,"please enter amount."); + return false; + } + if(comboBoxPayment.getSelectedItem().toString().equalsIgnoreCase("Cheque")){ + if(txtChequeNo.getText().equals("")){ + JOptionPane.showMessageDialog(this,"please enter cheque number."); + return false; + } + if(txtGSTNo.getText().equals("")){ + JOptionPane.showMessageDialog(this,"please enter bank name."); + return false; + } + } + if(comboBoxPayment.getSelectedItem().toString().equalsIgnoreCase("DD")){ + if(txtDDNo.getText().equals("")){ + JOptionPane.showMessageDialog(this, "please enter dd no."); + return false; + } + if(txtBankName1.getText().equals("")){ + JOptionPane.showMessageDialog(this,"please enter bank name."); + return false; + } + } + if(comboBoxPayment.getSelectedItem().toString().equalsIgnoreCase("Card")){ + if(txtBankName1.getText().equals("")){ + JOptionPane.showMessageDialog(this,"please enter bank name"); + return false; + } + } + return true; + } + public void fillComboBox(){ + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + PreparedStatement pst=con.prepareStatement("select CNAME from course"); + ResultSet rs=pst.executeQuery(); + while(rs.next()){ + comboBoxCourse1.addItem(rs.getString("CNAME")); + } + }catch(Exception e){ + e.printStackTrace(); + } + } + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents + private void initComponents() { + + panelSideBar = new javax.swing.JPanel(); + panelLogOut = new javax.swing.JPanel(); + btnLogOut = new javax.swing.JLabel(); + panelHome = new javax.swing.JPanel(); + btnHome = new javax.swing.JLabel(); + panelSearchRecords = new javax.swing.JPanel(); + btnSearchRecords = new javax.swing.JLabel(); + panelEditCourse = new javax.swing.JPanel(); + btnEditCourse = new javax.swing.JLabel(); + panelCourseList = new javax.swing.JPanel(); + btnCourseList = new javax.swing.JLabel(); + panelViewAllRecords = new javax.swing.JPanel(); + btnViewAllRecords = new javax.swing.JLabel(); + panelBack = new javax.swing.JPanel(); + btnBack = new javax.swing.JLabel(); + panelParent = new javax.swing.JPanel(); + lblChequeNo = new javax.swing.JLabel(); + lblReceiptNo = new javax.swing.JLabel(); + lblDdNo = new javax.swing.JLabel(); + lblModeOfPayment = new javax.swing.JLabel(); + txtGSTNo = new javax.swing.JLabel(); + lblDate = new javax.swing.JLabel(); + txtReceiptNo = new javax.swing.JTextField(); + txtChequeNo = new javax.swing.JTextField(); + DateChosser = new com.toedter.calendar.JDateChooser(); + panelChild = new javax.swing.JPanel(); + lblPaymentCollage = new javax.swing.JLabel(); + lblTo = new javax.swing.JLabel(); + txtLastDate = new javax.swing.JTextField(); + lblAmount = new javax.swing.JLabel(); + txtFirstDate = new javax.swing.JTextField(); + lblReceiverSignature = new javax.swing.JLabel(); + lblRecievedFrom = new javax.swing.JLabel(); + jSeparator1 = new javax.swing.JSeparator(); + jSeparator2 = new javax.swing.JSeparator(); + lblCourse = new javax.swing.JLabel(); + lblRemark = new javax.swing.JLabel(); + lblSgst = new javax.swing.JLabel(); + txtSumTotal = new javax.swing.JTextField(); + txtTotalInWords = new javax.swing.JTextField(); + txtCgst = new javax.swing.JTextField(); + txtAmountFirst = new javax.swing.JTextField(); + jSeparator3 = new javax.swing.JSeparator(); + txtSgst = new javax.swing.JTextField(); + lblSrNo = new javax.swing.JLabel(); + txtHead = new javax.swing.JTextField(); + jScrollPane1 = new javax.swing.JScrollPane(); + textPaneRemark = new javax.swing.JTextPane(); + lblTotalInWords = new javax.swing.JLabel(); + jSeparator4 = new javax.swing.JSeparator(); + jLabel18 = new javax.swing.JLabel(); + btnPrint = new javax.swing.JButton(); + lblHead = new javax.swing.JLabel(); + lblCgst = new javax.swing.JLabel(); + comboBoxCourse1 = new javax.swing.JComboBox<>(); + txtHead1 = new javax.swing.JTextField(); + txtRollNo = new javax.swing.JTextField(); + txtDDNo = new javax.swing.JTextField(); + comboBoxPayment = new javax.swing.JComboBox<>(); + txtBankName1 = new javax.swing.JTextField(); + lblBankName1 = new javax.swing.JLabel(); + lblGSTNo1 = new javax.swing.JLabel(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + panelSideBar.setBackground(new java.awt.Color(255, 102, 102)); + panelSideBar.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + panelLogOut.setBackground(new java.awt.Color(255, 102, 102)); + panelLogOut.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelLogOut.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnLogOut.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnLogOut.setForeground(new java.awt.Color(255, 255, 255)); + btnLogOut.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/logout.png"))); // NOI18N + btnLogOut.setText(" Logout"); + btnLogOut.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnLogOutMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnLogOutMouseExited(evt); + } + }); + panelLogOut.add(btnLogOut, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, -10, 260, -1)); + + panelSideBar.add(panelLogOut, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 540, 320, 50)); + + panelHome.setBackground(new java.awt.Color(255, 102, 102)); + panelHome.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelHome.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnHome.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnHome.setForeground(new java.awt.Color(255, 255, 255)); + btnHome.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/home.png"))); // NOI18N + btnHome.setText(" HOME"); + btnHome.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnHomeMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnHomeMouseExited(evt); + } + }); + panelHome.add(btnHome, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 310, 50)); + + panelSideBar.add(panelHome, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 60, 320, 50)); + + panelSearchRecords.setBackground(new java.awt.Color(255, 102, 102)); + panelSearchRecords.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelSearchRecords.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnSearchRecords.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnSearchRecords.setForeground(new java.awt.Color(255, 255, 255)); + btnSearchRecords.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/search2.png"))); // NOI18N + btnSearchRecords.setText(" Search Records"); + btnSearchRecords.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseExited(evt); + } + }); + panelSearchRecords.add(btnSearchRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 310, 60)); + + panelSideBar.add(panelSearchRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 140, 320, 50)); + + panelEditCourse.setBackground(new java.awt.Color(255, 102, 102)); + panelEditCourse.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelEditCourse.setFont(new java.awt.Font("Segoe UI", 1, 24)); // NOI18N + panelEditCourse.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnEditCourse.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnEditCourse.setForeground(new java.awt.Color(255, 255, 255)); + btnEditCourse.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/edit2.png"))); // NOI18N + btnEditCourse.setText(" Edit Course"); + btnEditCourse.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnEditCourseMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnEditCourseMouseExited(evt); + } + }); + panelEditCourse.add(btnEditCourse, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 260, -1)); + + panelSideBar.add(panelEditCourse, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 220, 320, 50)); + + panelCourseList.setBackground(new java.awt.Color(255, 102, 102)); + panelCourseList.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelCourseList.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnCourseList.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnCourseList.setForeground(new java.awt.Color(255, 255, 255)); + btnCourseList.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/list.png"))); // NOI18N + btnCourseList.setText(" Course List"); + btnCourseList.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnCourseListMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnCourseListMouseExited(evt); + } + }); + panelCourseList.add(btnCourseList, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, -10, 260, -1)); + + panelSideBar.add(panelCourseList, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 300, 320, 50)); + + panelViewAllRecords.setBackground(new java.awt.Color(255, 102, 102)); + panelViewAllRecords.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelViewAllRecords.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnViewAllRecords.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnViewAllRecords.setForeground(new java.awt.Color(255, 255, 255)); + btnViewAllRecords.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/view all record.png"))); // NOI18N + btnViewAllRecords.setText(" View All Records"); + btnViewAllRecords.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseExited(evt); + } + }); + panelViewAllRecords.add(btnViewAllRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 320, -1)); + + panelSideBar.add(panelViewAllRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 380, 320, 50)); + + panelBack.setBackground(new java.awt.Color(255, 102, 102)); + panelBack.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelBack.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnBack.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnBack.setForeground(new java.awt.Color(255, 255, 255)); + btnBack.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/left-arrow.png"))); // NOI18N + btnBack.setText(" Back"); + btnBack.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnBackMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnBackMouseExited(evt); + } + }); + panelBack.add(btnBack, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, -10, 260, -1)); + + panelSideBar.add(panelBack, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 460, 320, 50)); + + getContentPane().add(panelSideBar, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 430, 1040)); + + panelParent.setBackground(new java.awt.Color(255, 204, 204)); + panelParent.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + lblChequeNo.setBackground(new java.awt.Color(51, 51, 51)); + lblChequeNo.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblChequeNo.setText("Cheque No :"); + panelParent.add(lblChequeNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(70, 80, -1, -1)); + + lblReceiptNo.setBackground(new java.awt.Color(51, 51, 51)); + lblReceiptNo.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblReceiptNo.setText("Receipt no : MLV-"); + panelParent.add(lblReceiptNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 20, -1, -1)); + + lblDdNo.setBackground(new java.awt.Color(51, 51, 51)); + lblDdNo.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblDdNo.setText("DD no :"); + panelParent.add(lblDdNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 80, -1, -1)); + + lblModeOfPayment.setBackground(new java.awt.Color(51, 51, 51)); + lblModeOfPayment.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblModeOfPayment.setText(" Mode of payment : "); + panelParent.add(lblModeOfPayment, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 50, -1, -1)); + + txtGSTNo.setBackground(new java.awt.Color(51, 51, 51)); + txtGSTNo.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + txtGSTNo.setText(" sffsfe22"); + panelParent.add(txtGSTNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(630, 50, 70, -1)); + + lblDate.setBackground(new java.awt.Color(51, 51, 51)); + lblDate.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblDate.setText(" Date : "); + panelParent.add(lblDate, new org.netbeans.lib.awtextra.AbsoluteConstraints(570, 20, -1, -1)); + panelParent.add(txtReceiptNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 20, 150, -1)); + panelParent.add(txtChequeNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 80, 150, -1)); + panelParent.add(DateChosser, new org.netbeans.lib.awtextra.AbsoluteConstraints(620, 20, 140, -1)); + + panelChild.setBackground(new java.awt.Color(255, 204, 204)); + panelChild.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + lblPaymentCollage.setBackground(new java.awt.Color(51, 51, 51)); + lblPaymentCollage.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblPaymentCollage.setText("the following paymemnts the collage office for the year "); + panelChild.add(lblPaymentCollage, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 50, -1, -1)); + + lblTo.setBackground(new java.awt.Color(51, 51, 51)); + lblTo.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblTo.setText("to"); + panelChild.add(lblTo, new org.netbeans.lib.awtextra.AbsoluteConstraints(460, 50, 20, -1)); + panelChild.add(txtLastDate, new org.netbeans.lib.awtextra.AbsoluteConstraints(490, 50, 80, -1)); + + lblAmount.setBackground(new java.awt.Color(51, 51, 51)); + lblAmount.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblAmount.setText("Amount"); + panelChild.add(lblAmount, new org.netbeans.lib.awtextra.AbsoluteConstraints(700, 130, -1, -1)); + panelChild.add(txtFirstDate, new org.netbeans.lib.awtextra.AbsoluteConstraints(360, 50, 90, -1)); + + lblReceiverSignature.setBackground(new java.awt.Color(51, 51, 51)); + lblReceiverSignature.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblReceiverSignature.setText("Receiver signature"); + panelChild.add(lblReceiverSignature, new org.netbeans.lib.awtextra.AbsoluteConstraints(710, 340, -1, -1)); + + lblRecievedFrom.setBackground(new java.awt.Color(51, 51, 51)); + lblRecievedFrom.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblRecievedFrom.setText("Recieved From :"); + panelChild.add(lblRecievedFrom, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 20, -1, -1)); + panelChild.add(jSeparator1, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 150, 820, 10)); + panelChild.add(jSeparator2, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 120, 820, 10)); + + lblCourse.setBackground(new java.awt.Color(51, 51, 51)); + lblCourse.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblCourse.setText("Course :"); + panelChild.add(lblCourse, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 80, -1, -1)); + + lblRemark.setBackground(new java.awt.Color(51, 51, 51)); + lblRemark.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblRemark.setText("Remark :"); + panelChild.add(lblRemark, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 380, -1, -1)); + + lblSgst.setBackground(new java.awt.Color(51, 51, 51)); + lblSgst.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblSgst.setText("SGST 9% "); + panelChild.add(lblSgst, new org.netbeans.lib.awtextra.AbsoluteConstraints(300, 220, -1, -1)); + panelChild.add(txtSumTotal, new org.netbeans.lib.awtextra.AbsoluteConstraints(660, 260, 150, -1)); + panelChild.add(txtTotalInWords, new org.netbeans.lib.awtextra.AbsoluteConstraints(130, 310, 410, -1)); + panelChild.add(txtCgst, new org.netbeans.lib.awtextra.AbsoluteConstraints(660, 190, 150, -1)); + + txtAmountFirst.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + txtAmountFirstActionPerformed(evt); + } + }); + panelChild.add(txtAmountFirst, new org.netbeans.lib.awtextra.AbsoluteConstraints(660, 160, 150, -1)); + panelChild.add(jSeparator3, new org.netbeans.lib.awtextra.AbsoluteConstraints(650, 250, 180, 10)); + panelChild.add(txtSgst, new org.netbeans.lib.awtextra.AbsoluteConstraints(660, 220, 150, -1)); + + lblSrNo.setBackground(new java.awt.Color(51, 51, 51)); + lblSrNo.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblSrNo.setText("Sr No "); + panelChild.add(lblSrNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 130, -1, -1)); + panelChild.add(txtHead, new org.netbeans.lib.awtextra.AbsoluteConstraints(130, 20, 400, -1)); + + jScrollPane1.setViewportView(textPaneRemark); + + panelChild.add(jScrollPane1, new org.netbeans.lib.awtextra.AbsoluteConstraints(130, 360, 410, 90)); + + lblTotalInWords.setBackground(new java.awt.Color(51, 51, 51)); + lblTotalInWords.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblTotalInWords.setText("Total in words : "); + panelChild.add(lblTotalInWords, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 310, -1, -1)); + panelChild.add(jSeparator4, new org.netbeans.lib.awtextra.AbsoluteConstraints(650, 330, 190, 20)); + + jLabel18.setBackground(new java.awt.Color(51, 51, 51)); + jLabel18.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + jLabel18.setText("Roll No :"); + panelChild.add(jLabel18, new org.netbeans.lib.awtextra.AbsoluteConstraints(610, 80, -1, -1)); + + btnPrint.setText("Print"); + btnPrint.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + btnPrintActionPerformed(evt); + } + }); + panelChild.add(btnPrint, new org.netbeans.lib.awtextra.AbsoluteConstraints(720, 430, -1, -1)); + + lblHead.setBackground(new java.awt.Color(51, 51, 51)); + lblHead.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblHead.setText("Head "); + panelChild.add(lblHead, new org.netbeans.lib.awtextra.AbsoluteConstraints(300, 130, -1, -1)); + + lblCgst.setBackground(new java.awt.Color(51, 51, 51)); + lblCgst.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblCgst.setText("CGST 9%"); + panelChild.add(lblCgst, new org.netbeans.lib.awtextra.AbsoluteConstraints(300, 190, -1, -1)); + + comboBoxCourse1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + comboBoxCourse1ActionPerformed(evt); + } + }); + panelChild.add(comboBoxCourse1, new org.netbeans.lib.awtextra.AbsoluteConstraints(130, 80, 350, -1)); + + txtHead1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + txtHead1ActionPerformed(evt); + } + }); + panelChild.add(txtHead1, new org.netbeans.lib.awtextra.AbsoluteConstraints(130, 160, 400, -1)); + panelChild.add(txtRollNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(660, 80, 90, -1)); + + panelParent.add(panelChild, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 140, 870, 900)); + panelParent.add(txtDDNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 80, 150, -1)); + + comboBoxPayment.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] { "DD", "Cheque", "Cash", "Card" })); + comboBoxPayment.setSelectedIndex(2); + comboBoxPayment.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + comboBoxPaymentActionPerformed(evt); + } + }); + panelParent.add(comboBoxPayment, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 50, 150, -1)); + panelParent.add(txtBankName1, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 110, 150, -1)); + + lblBankName1.setBackground(new java.awt.Color(51, 51, 51)); + lblBankName1.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblBankName1.setText("Bank Name : "); + panelParent.add(lblBankName1, new org.netbeans.lib.awtextra.AbsoluteConstraints(70, 110, -1, -1)); + + lblGSTNo1.setBackground(new java.awt.Color(51, 51, 51)); + lblGSTNo1.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblGSTNo1.setText(" GSTIN: "); + panelParent.add(lblGSTNo1, new org.netbeans.lib.awtextra.AbsoluteConstraints(570, 50, 60, -1)); + + getContentPane().add(panelParent, new org.netbeans.lib.awtextra.AbsoluteConstraints(430, 0, 1420, 1040)); + + pack(); + setLocationRelativeTo(null); + }// </editor-fold>//GEN-END:initComponents + + private void btnLogOutMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelLogOut.setBackground(clr); + }//GEN-LAST:event_btnLogOutMouseEntered + + private void btnLogOutMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelLogOut.setBackground(clr); + }//GEN-LAST:event_btnLogOutMouseExited + + private void btnHomeMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseEntered + Color clr=new Color(255,204,204); + panelHome.setBackground(clr); + }//GEN-LAST:event_btnHomeMouseEntered + + private void btnHomeMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelHome.setBackground(clr); + }//GEN-LAST:event_btnHomeMouseExited + + private void btnSearchRecordsMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelSearchRecords.setBackground(clr); + }//GEN-LAST:event_btnSearchRecordsMouseEntered + + private void btnSearchRecordsMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelSearchRecords.setBackground(clr); + }//GEN-LAST:event_btnSearchRecordsMouseExited + + private void btnEditCourseMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelEditCourse.setBackground(clr); + }//GEN-LAST:event_btnEditCourseMouseEntered + + private void btnEditCourseMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelEditCourse.setBackground(clr); + }//GEN-LAST:event_btnEditCourseMouseExited + + private void btnCourseListMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelCourseList.setBackground(clr); + }//GEN-LAST:event_btnCourseListMouseEntered + + private void btnCourseListMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelCourseList.setBackground(clr); + }//GEN-LAST:event_btnCourseListMouseExited + + private void btnViewAllRecordsMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelViewAllRecords.setBackground(clr); + }//GEN-LAST:event_btnViewAllRecordsMouseEntered + + private void btnViewAllRecordsMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelViewAllRecords.setBackground(clr); + }//GEN-LAST:event_btnViewAllRecordsMouseExited + + private void btnBackMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelBack.setBackground(clr); + }//GEN-LAST:event_btnBackMouseEntered + + private void btnBackMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelBack.setBackground(clr); + }//GEN-LAST:event_btnBackMouseExited + + private void comboBoxPaymentActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_comboBoxPaymentActionPerformed + // TODO add your handling code here: + if(comboBoxPayment.getSelectedIndex() == 0){ + lblDdNo.setVisible(true); + txtDDNo.setVisible(true); + lblChequeNo.setVisible(false); + txtChequeNo.setVisible(false); + lblBankName1.setVisible(true); + txtBankName1.setVisible(true); + } + if(comboBoxPayment.getSelectedIndex() == 1){ + lblDdNo.setVisible(false); + txtDDNo.setVisible(false); + lblChequeNo.setVisible(true); + txtChequeNo.setVisible(true); + lblBankName1.setVisible(true); + txtBankName1.setVisible(true); + } + if(comboBoxPayment.getSelectedIndex() == 2){ + lblDdNo.setVisible(false); + txtDDNo.setVisible(false); + lblChequeNo.setVisible(false); + txtChequeNo.setVisible(false); + lblBankName1.setVisible(false); + txtBankName1.setVisible(false); + } + if(comboBoxPayment.getSelectedItem().equals("Card")){ + lblDdNo.setVisible(false); + txtDDNo.setVisible(false); + txtGSTNo.setVisible(true); + txtGSTNo.setVisible(true); + lblChequeNo.setVisible(false); + txtChequeNo.setVisible(false); + lblBankName1.setVisible(true); + txtBankName1.setVisible(true); + } + }//GEN-LAST:event_comboBoxPaymentActionPerformed + + private void btnPrintActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnPrintActionPerformed + if(validation() == true){ + String result= updateData(); + if(result.equals("Success")){ + JOptionPane.showMessageDialog(this, "Records Update SuccessFully"); + printReceipt p =new printReceipt(); + p.setVisible(true); + this.dispose(); + } + else{ + JOptionPane.showMessageDialog(this, "Records Update Failed"); + } + } + }//GEN-LAST:event_btnPrintActionPerformed + + private void txtAmountFirstActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txtAmountFirstActionPerformed + Float amnt=Float.parseFloat(txtAmountFirst.getText()); + Float cgst=(float)(amnt * 0.09); + Float sgst=(float)(amnt * 0.09); + txtCgst.setText(cgst.toString()); + txtSgst.setText(sgst.toString()); + float total=amnt+cgst+sgst; + txtSumTotal.setText(Float.toString(total)); + txtTotalInWords.setText(NumberToWordsConverter.convert((int)total)+" only /-"); + }//GEN-LAST:event_txtAmountFirstActionPerformed + + private void txtHead1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txtHead1ActionPerformed + + }//GEN-LAST:event_txtHead1ActionPerformed + + private void comboBoxCourse1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_comboBoxCourse1ActionPerformed + // TODO add your handling code here: + txtHead1.setText(comboBoxCourse1.getSelectedItem().toString()); + }//GEN-LAST:event_comboBoxCourse1ActionPerformed + public int getReceiptNo(){ + int receipt_no=0; + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + PreparedStatement pst=con.prepareStatement("select max(recieptNo) from fees_details"); + ResultSet rs=pst.executeQuery(); + if(rs.next() == true){ + receipt_no=rs.getInt(1); + } + }catch(Exception e){ + e.printStackTrace(); + } + return receipt_no+1; + } + public String updateData(){ + String status=""; + int recieptNo=Integer.parseInt(txtReceiptNo.getText()); + String studentName=txtHead.getText(); + String rollNo=txtRollNo.getText(); + String paymentMode=comboBoxPayment.getSelectedItem().toString(); + String chequeNo=txtChequeNo.getText(); + String bankName=txtBankName1.getText(); + String ddNo=txtDDNo.getText(); + String courseName=txtHead1.getText(); + String gstin=txtGSTNo.getText(); + float totalAmount=Float.parseFloat(txtSumTotal.getText()); + SimpleDateFormat dateFormat =new SimpleDateFormat("yyyy-MM-dd"); + String date=dateFormat.format(DateChosser.getDate()); + float initialAmount=Float.parseFloat(txtAmountFirst.getText()); + float cgst=Float.parseFloat(txtCgst.getText()); + float sgst=Float.parseFloat(txtSgst.getText()); + String totalInWords=txtTotalInWords.getText(); + String remark=textPaneRemark.getText(); + int year1=Integer.parseInt(txtFirstDate.getText()); + int year2=Integer.parseInt(txtLastDate.getText()); + + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + PreparedStatement pst=con.prepareStatement("update fees_details set studentName=?,rollNo=?,paymentMode=?,chequeNo=?,bankName=?,ddNo=?,courseName=?,gstin=?,totalAmount=?,date=?,amount=?,cgst=?,sgst=?,totalInWords=?,remark=?,year1=?,year2=? where recieptNo=?"); + pst.setString(1, studentName); + pst.setString(2,rollNo); + pst.setString(3,paymentMode); + pst.setString(4,chequeNo); + pst.setString(5, bankName); + pst.setString(6,ddNo); + pst.setString(7,courseName); + pst.setString(8,gstin); + pst.setFloat(9,totalAmount); + pst.setString(10,date); + pst.setFloat(11, initialAmount); + pst.setFloat(12,cgst); + pst.setFloat(13,sgst); + pst.setString(14,totalInWords); + pst.setString(15,remark); + pst.setInt(16,year1); + pst.setInt(17,year2); + pst.setInt(18,recieptNo); + int rowCount=pst.executeUpdate(); + if(rowCount==1){ + status="Success"; + } + else{ + status="Failed"; + } + }catch(Exception e){ + e.printStackTrace(); + } + return status; + } + public void setRecords(){ + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + PreparedStatement pst=con.prepareStatement("SELECT * FROM fees_details ORDER BY recieptNo DESC LIMIT 1"); + ResultSet rs=pst.executeQuery(); + rs.next(); + txtReceiptNo.setText(rs.getString("recieptNo")); + comboBoxPayment.setSelectedItem(rs.getString("paymentMode")); + txtChequeNo.setText(rs.getString("chequeNo")); + txtDDNo.setText(rs.getString("ddNo")); + txtBankName1.setText(rs.getString("bankName")); + txtHead.setText(rs.getString("studentName")); + DateChosser.setDate(rs.getDate("date")); + txtFirstDate.setText(rs.getString("year1")); + txtLastDate.setText(rs.getString("year2")); + comboBoxCourse1.setSelectedItem(rs.getString("courseName")); + txtAmountFirst.setText(rs.getString("amount")); + txtCgst.setText(rs.getString("cgst")); + txtSgst.setText(rs.getString("sgst")); + txtSumTotal.setText(rs.getString("totalAmount")); + txtTotalInWords.setText(rs.getString("totalInWords")); + txtRollNo.setText(rs.getString("rollNo")); + textPaneRemark.setText(rs.getString("remark")); + }catch(Exception e){ + e.printStackTrace(); + } + } + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + /* Set the Nimbus look and feel */ + //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "> + /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. + * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html + */ + try { + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + if ("Nimbus".equals(info.getName())) { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + } + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(UpdateFeesDetails.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(UpdateFeesDetails.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(UpdateFeesDetails.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(UpdateFeesDetails.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + //</editor-fold> + //</editor-fold> + + /* Create and display the form */ + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new UpdateFeesDetails().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private com.toedter.calendar.JDateChooser DateChosser; + private javax.swing.JLabel btnBack; + private javax.swing.JLabel btnCourseList; + private javax.swing.JLabel btnEditCourse; + private javax.swing.JLabel btnHome; + private javax.swing.JLabel btnLogOut; + private javax.swing.JButton btnPrint; + private javax.swing.JLabel btnSearchRecords; + private javax.swing.JLabel btnViewAllRecords; + private javax.swing.JComboBox<String> comboBoxCourse1; + private javax.swing.JComboBox<String> comboBoxPayment; + private javax.swing.JLabel jLabel18; + private javax.swing.JScrollPane jScrollPane1; + private javax.swing.JSeparator jSeparator1; + private javax.swing.JSeparator jSeparator2; + private javax.swing.JSeparator jSeparator3; + private javax.swing.JSeparator jSeparator4; + private javax.swing.JLabel lblAmount; + private javax.swing.JLabel lblBankName1; + private javax.swing.JLabel lblCgst; + private javax.swing.JLabel lblChequeNo; + private javax.swing.JLabel lblCourse; + private javax.swing.JLabel lblDate; + private javax.swing.JLabel lblDdNo; + private javax.swing.JLabel lblGSTNo1; + private javax.swing.JLabel lblHead; + private javax.swing.JLabel lblModeOfPayment; + private javax.swing.JLabel lblPaymentCollage; + private javax.swing.JLabel lblReceiptNo; + private javax.swing.JLabel lblReceiverSignature; + private javax.swing.JLabel lblRecievedFrom; + private javax.swing.JLabel lblRemark; + private javax.swing.JLabel lblSgst; + private javax.swing.JLabel lblSrNo; + private javax.swing.JLabel lblTo; + private javax.swing.JLabel lblTotalInWords; + private javax.swing.JPanel panelBack; + private javax.swing.JPanel panelChild; + private javax.swing.JPanel panelCourseList; + private javax.swing.JPanel panelEditCourse; + private javax.swing.JPanel panelHome; + private javax.swing.JPanel panelLogOut; + private javax.swing.JPanel panelParent; + private javax.swing.JPanel panelSearchRecords; + private javax.swing.JPanel panelSideBar; + private javax.swing.JPanel panelViewAllRecords; + private javax.swing.JTextPane textPaneRemark; + private javax.swing.JTextField txtAmountFirst; + private javax.swing.JTextField txtBankName1; + private javax.swing.JTextField txtCgst; + private javax.swing.JTextField txtChequeNo; + private javax.swing.JTextField txtDDNo; + private javax.swing.JTextField txtFirstDate; + private javax.swing.JLabel txtGSTNo; + private javax.swing.JTextField txtHead; + private javax.swing.JTextField txtHead1; + private javax.swing.JTextField txtLastDate; + private javax.swing.JTextField txtReceiptNo; + private javax.swing.JTextField txtRollNo; + private javax.swing.JTextField txtSgst; + private javax.swing.JTextField txtSumTotal; + private javax.swing.JTextField txtTotalInWords; + // End of variables declaration//GEN-END:variables +} diff --git a/src/fees_management_system/ViewAllRecords.form b/src/fees_management_system/ViewAllRecords.form new file mode 100644 index 0000000..e99cd11 --- /dev/null +++ b/src/fees_management_system/ViewAllRecords.form @@ -0,0 +1,502 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<Form version="1.5" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.JFrameFormInfo"> + <Properties> + <Property name="defaultCloseOperation" type="int" value="3"/> + </Properties> + <SyntheticProperties> + <SyntheticProperty name="formSizePolicy" type="int" value="1"/> + <SyntheticProperty name="generateCenter" type="boolean" value="true"/> + </SyntheticProperties> + <AuxValues> + <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/> + <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/> + <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/> + <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,2,126,0,0,5,6"/> + </AuxValues> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="panelSideBar"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="0" width="430" height="860"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="panelLogOut"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="540" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnLogOut"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/exit.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Logout"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnLogOutMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnLogOutMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnLogOutMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="2" width="260" height="40"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelHome"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="60" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnHome"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/home.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" HOME"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnHomeMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnHomeMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnHomeMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="310" height="50"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelSearchRecords"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="140" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnSearchRecords"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/search2.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Search Records"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnSearchRecordsMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnSearchRecordsMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnSearchRecordsMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="310" height="60"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelEditCourse"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="24" style="1"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="220" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnEditCourse"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/edit2.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Edit Course"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditCourseMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditCourseMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditCourseMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelCourseList"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="300" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnCourseList"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/list.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Course List"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnCourseListMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnCourseListMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnCourseListMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="-10" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelViewAllRecords"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="380" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnViewAllRecords"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/view all record.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" View All Records"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnViewAllRecordsMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnViewAllRecordsMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnViewAllRecordsMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="0" width="320" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelBack"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="460" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnBack"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/left-arrow.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Back"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnBackMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnBackMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnBackMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="-10" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="jPanel1"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="430" y="0" width="850" height="660"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JScrollPane" name="jScrollPane1"> + <AuxValues> + <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/> + </AuxValues> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="90" width="810" height="540"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/> + <SubComponents> + <Component class="javax.swing.JTable" name="tblViewAllRecords"> + <Properties> + <Property name="model" type="javax.swing.table.TableModel" editor="org.netbeans.modules.form.editors2.TableModelEditor"> + <Table columnCount="8" rowCount="0"> + <Column editable="true" title="Reciept No" type="java.lang.Object"/> + <Column editable="true" title="Roll No" type="java.lang.Object"/> + <Column editable="true" title="Student Name" type="java.lang.Object"/> + <Column editable="true" title="Course Name" type="java.lang.Object"/> + <Column editable="true" title="Total Amount" type="java.lang.Object"/> + <Column editable="true" title="Payment Mode" type="java.lang.Object"/> + <Column editable="true" title="Date" type="java.lang.Object"/> + <Column editable="true" title="Remark" type="java.lang.Object"/> + </Table> + </Property> + <Property name="columnModel" type="javax.swing.table.TableColumnModel" editor="org.netbeans.modules.form.editors2.TableColumnModelEditor"> + <TableColumnModel selectionModel="0"> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + <Column maxWidth="-1" minWidth="-1" prefWidth="-1" resizable="true"> + <Title/> + <Editor/> + <Renderer/> + </Column> + </TableColumnModel> + </Property> + <Property name="tableHeader" type="javax.swing.table.JTableHeader" editor="org.netbeans.modules.form.editors2.JTableHeaderEditor"> + <TableHeader reorderingAllowed="true" resizingAllowed="true"/> + </Property> + </Properties> + </Component> + </SubComponents> + </Container> + <Component class="javax.swing.JLabel" name="jLabel1"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="b5" green="89" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="View All Records"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="320" y="20" width="200" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="jTextField1"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="b5" green="89" red="0" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="310" y="50" width="200" height="5"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + </SubComponents> +</Form> diff --git a/src/fees_management_system/ViewAllRecords.java b/src/fees_management_system/ViewAllRecords.java new file mode 100644 index 0000000..4997e9f --- /dev/null +++ b/src/fees_management_system/ViewAllRecords.java @@ -0,0 +1,458 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to edit this template + */ +package fees_managment_syatem; + +import java.awt.Color; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import javax.swing.table.DefaultTableModel; + +/** + * + * @author yash + */ +public class ViewAllRecords extends javax.swing.JFrame { + + /** + * Creates new form ViewAllRecords + */ + DefaultTableModel model; + public ViewAllRecords() { + initComponents(); + setViewAllRecords(); + } +public void setViewAllRecords(){ + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + PreparedStatement pst=con.prepareStatement("select * from fees_details"); + ResultSet rs=pst.executeQuery(); + while(rs.next()){ + String ReceiptNo=rs.getString("recieptNo"); + String RollNo=rs.getString("rollNo"); + String StudentName=rs.getString("studentName"); + String Course=rs.getString("courseName"); + String Amount=rs.getString("totalAmount"); + String PaymentMode=rs.getString("paymentMode"); + String Date=rs.getString("date"); + String Remark=rs.getString("remark"); + Object[] obj={ReceiptNo,RollNo,StudentName,Course,PaymentMode,Amount,Remark}; + model=(DefaultTableModel)tblViewAllRecords.getModel(); + model.addRow(obj); + } + }catch(Exception e){ + e.printStackTrace(); + } +} + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents + private void initComponents() { + + panelSideBar = new javax.swing.JPanel(); + panelLogOut = new javax.swing.JPanel(); + btnLogOut = new javax.swing.JLabel(); + panelHome = new javax.swing.JPanel(); + btnHome = new javax.swing.JLabel(); + panelSearchRecords = new javax.swing.JPanel(); + btnSearchRecords = new javax.swing.JLabel(); + panelEditCourse = new javax.swing.JPanel(); + btnEditCourse = new javax.swing.JLabel(); + panelCourseList = new javax.swing.JPanel(); + btnCourseList = new javax.swing.JLabel(); + panelViewAllRecords = new javax.swing.JPanel(); + btnViewAllRecords = new javax.swing.JLabel(); + panelBack = new javax.swing.JPanel(); + btnBack = new javax.swing.JLabel(); + jPanel1 = new javax.swing.JPanel(); + jScrollPane1 = new javax.swing.JScrollPane(); + tblViewAllRecords = new javax.swing.JTable(); + jLabel1 = new javax.swing.JLabel(); + jTextField1 = new javax.swing.JTextField(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + panelSideBar.setBackground(new java.awt.Color(255, 102, 102)); + panelSideBar.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + panelLogOut.setBackground(new java.awt.Color(255, 102, 102)); + panelLogOut.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelLogOut.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnLogOut.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnLogOut.setForeground(new java.awt.Color(255, 255, 255)); + btnLogOut.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/exit.png"))); // NOI18N + btnLogOut.setText(" Logout"); + btnLogOut.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnLogOutMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnLogOutMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnLogOutMouseExited(evt); + } + }); + panelLogOut.add(btnLogOut, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 2, 260, 40)); + + panelSideBar.add(panelLogOut, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 540, 320, 50)); + + panelHome.setBackground(new java.awt.Color(255, 102, 102)); + panelHome.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelHome.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnHome.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnHome.setForeground(new java.awt.Color(255, 255, 255)); + btnHome.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/home.png"))); // NOI18N + btnHome.setText(" HOME"); + btnHome.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnHomeMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnHomeMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnHomeMouseExited(evt); + } + }); + panelHome.add(btnHome, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 310, 50)); + + panelSideBar.add(panelHome, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 60, 320, 50)); + + panelSearchRecords.setBackground(new java.awt.Color(255, 102, 102)); + panelSearchRecords.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelSearchRecords.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnSearchRecords.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnSearchRecords.setForeground(new java.awt.Color(255, 255, 255)); + btnSearchRecords.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/search2.png"))); // NOI18N + btnSearchRecords.setText(" Search Records"); + btnSearchRecords.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseExited(evt); + } + }); + panelSearchRecords.add(btnSearchRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 310, 60)); + + panelSideBar.add(panelSearchRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 140, 320, 50)); + + panelEditCourse.setBackground(new java.awt.Color(255, 102, 102)); + panelEditCourse.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelEditCourse.setFont(new java.awt.Font("Segoe UI", 1, 24)); // NOI18N + panelEditCourse.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnEditCourse.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnEditCourse.setForeground(new java.awt.Color(255, 255, 255)); + btnEditCourse.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/edit2.png"))); // NOI18N + btnEditCourse.setText(" Edit Course"); + btnEditCourse.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnEditCourseMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnEditCourseMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnEditCourseMouseExited(evt); + } + }); + panelEditCourse.add(btnEditCourse, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 260, -1)); + + panelSideBar.add(panelEditCourse, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 220, 320, 50)); + + panelCourseList.setBackground(new java.awt.Color(255, 102, 102)); + panelCourseList.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelCourseList.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnCourseList.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnCourseList.setForeground(new java.awt.Color(255, 255, 255)); + btnCourseList.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/list.png"))); // NOI18N + btnCourseList.setText(" Course List"); + btnCourseList.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnCourseListMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnCourseListMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnCourseListMouseExited(evt); + } + }); + panelCourseList.add(btnCourseList, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, -10, 260, -1)); + + panelSideBar.add(panelCourseList, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 300, 320, 50)); + + panelViewAllRecords.setBackground(new java.awt.Color(255, 102, 102)); + panelViewAllRecords.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelViewAllRecords.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnViewAllRecords.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnViewAllRecords.setForeground(new java.awt.Color(255, 255, 255)); + btnViewAllRecords.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/view all record.png"))); // NOI18N + btnViewAllRecords.setText(" View All Records"); + btnViewAllRecords.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseExited(evt); + } + }); + panelViewAllRecords.add(btnViewAllRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 320, -1)); + + panelSideBar.add(panelViewAllRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 380, 320, 50)); + + panelBack.setBackground(new java.awt.Color(255, 102, 102)); + panelBack.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelBack.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnBack.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnBack.setForeground(new java.awt.Color(255, 255, 255)); + btnBack.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/left-arrow.png"))); // NOI18N + btnBack.setText(" Back"); + btnBack.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnBackMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnBackMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnBackMouseExited(evt); + } + }); + panelBack.add(btnBack, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, -10, 260, -1)); + + panelSideBar.add(panelBack, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 460, 320, 50)); + + getContentPane().add(panelSideBar, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 430, 860)); + + jPanel1.setBackground(new java.awt.Color(255, 204, 204)); + jPanel1.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + tblViewAllRecords.setModel(new javax.swing.table.DefaultTableModel( + new Object [][] { + + }, + new String [] { + "Reciept No", "Roll No", "Student Name", "Course Name", "Total Amount", "Payment Mode", "Date", "Remark" + } + )); + jScrollPane1.setViewportView(tblViewAllRecords); + + jPanel1.add(jScrollPane1, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 90, 810, 540)); + + jLabel1.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + jLabel1.setForeground(new java.awt.Color(0, 137, 181)); + jLabel1.setText("View All Records"); + jPanel1.add(jLabel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(320, 20, 200, -1)); + + jTextField1.setBackground(new java.awt.Color(0, 137, 181)); + jPanel1.add(jTextField1, new org.netbeans.lib.awtextra.AbsoluteConstraints(310, 50, 200, 5)); + + getContentPane().add(jPanel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(430, 0, 850, 660)); + + pack(); + setLocationRelativeTo(null); + }// </editor-fold>//GEN-END:initComponents + + private void btnLogOutMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelLogOut.setBackground(clr); + }//GEN-LAST:event_btnLogOutMouseEntered + + private void btnLogOutMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelLogOut.setBackground(clr); + }//GEN-LAST:event_btnLogOutMouseExited + + private void btnHomeMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseClicked + HomePage home=new HomePage(); + home.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnHomeMouseClicked + + private void btnHomeMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseEntered + Color clr=new Color(255,204,204); + panelHome.setBackground(clr); + }//GEN-LAST:event_btnHomeMouseEntered + + private void btnHomeMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelHome.setBackground(clr); + }//GEN-LAST:event_btnHomeMouseExited + + private void btnSearchRecordsMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseClicked + SearchRecords search=new SearchRecords(); + search.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnSearchRecordsMouseClicked + + private void btnSearchRecordsMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelSearchRecords.setBackground(clr); + }//GEN-LAST:event_btnSearchRecordsMouseEntered + + private void btnSearchRecordsMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelSearchRecords.setBackground(clr); + }//GEN-LAST:event_btnSearchRecordsMouseExited + + private void btnEditCourseMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseClicked + EditCourse edit=new EditCourse(); + edit.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnEditCourseMouseClicked + + private void btnEditCourseMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelEditCourse.setBackground(clr); + }//GEN-LAST:event_btnEditCourseMouseEntered + + private void btnEditCourseMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelEditCourse.setBackground(clr); + }//GEN-LAST:event_btnEditCourseMouseExited + + private void btnCourseListMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseClicked + + }//GEN-LAST:event_btnCourseListMouseClicked + + private void btnCourseListMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelCourseList.setBackground(clr); + }//GEN-LAST:event_btnCourseListMouseEntered + + private void btnCourseListMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelCourseList.setBackground(clr); + }//GEN-LAST:event_btnCourseListMouseExited + + private void btnViewAllRecordsMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelViewAllRecords.setBackground(clr); + }//GEN-LAST:event_btnViewAllRecordsMouseEntered + + private void btnViewAllRecordsMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelViewAllRecords.setBackground(clr); + }//GEN-LAST:event_btnViewAllRecordsMouseExited + + private void btnBackMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelBack.setBackground(clr); + }//GEN-LAST:event_btnBackMouseEntered + + private void btnBackMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelBack.setBackground(clr); + }//GEN-LAST:event_btnBackMouseExited + + private void btnViewAllRecordsMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseClicked + ViewAllRecords viewrecords=new ViewAllRecords(); + viewrecords.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnViewAllRecordsMouseClicked + + private void btnBackMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseClicked + HomePage home=new HomePage(); + home.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnBackMouseClicked + + private void btnLogOutMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseClicked + this.dispose(); + }//GEN-LAST:event_btnLogOutMouseClicked + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + /* Set the Nimbus look and feel */ + //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "> + /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. + * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html + */ + try { + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + if ("Nimbus".equals(info.getName())) { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + } + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(ViewAllRecords.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(ViewAllRecords.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(ViewAllRecords.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(ViewAllRecords.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + //</editor-fold> + + /* Create and display the form */ + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new ViewAllRecords().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JLabel btnBack; + private javax.swing.JLabel btnCourseList; + private javax.swing.JLabel btnEditCourse; + private javax.swing.JLabel btnHome; + private javax.swing.JLabel btnLogOut; + private javax.swing.JLabel btnSearchRecords; + private javax.swing.JLabel btnViewAllRecords; + private javax.swing.JLabel jLabel1; + private javax.swing.JPanel jPanel1; + private javax.swing.JScrollPane jScrollPane1; + private javax.swing.JTextField jTextField1; + private javax.swing.JPanel panelBack; + private javax.swing.JPanel panelCourseList; + private javax.swing.JPanel panelEditCourse; + private javax.swing.JPanel panelHome; + private javax.swing.JPanel panelLogOut; + private javax.swing.JPanel panelSearchRecords; + private javax.swing.JPanel panelSideBar; + private javax.swing.JPanel panelViewAllRecords; + private javax.swing.JTable tblViewAllRecords; + // End of variables declaration//GEN-END:variables +} diff --git a/src/fees_management_system/addFees.form b/src/fees_management_system/addFees.form new file mode 100644 index 0000000..872bdbe --- /dev/null +++ b/src/fees_management_system/addFees.form @@ -0,0 +1,969 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<Form version="1.3" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.JFrameFormInfo"> + <Properties> + <Property name="defaultCloseOperation" type="int" value="3"/> + </Properties> + <SyntheticProperties> + <SyntheticProperty name="formSizePolicy" type="int" value="1"/> + <SyntheticProperty name="generateCenter" type="boolean" value="true"/> + </SyntheticProperties> + <AuxValues> + <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/> + <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/> + <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/> + <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,2,50,0,0,5,24"/> + </AuxValues> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="panelSideBar"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="0" width="430" height="1040"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="panelLogOut"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="540" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnLogOut"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/exit.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Logout"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnLogOutMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnLogOutMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnLogOutMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="0" width="260" height="50"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelHome"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="60" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnHome"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/home.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" HOME"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnHomeMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnHomeMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnHomeMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="310" height="50"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelSearchRecords"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="140" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnSearchRecords"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/search2.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Search Records"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnSearchRecordsMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnSearchRecordsMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnSearchRecordsMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="310" height="60"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelEditCourse"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="24" style="1"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="220" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnEditCourse"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/edit2.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Edit Course"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditCourseMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditCourseMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditCourseMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelCourseList"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="300" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnCourseList"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/list.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Course List"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnCourseListMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnCourseListMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnCourseListMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="-10" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelViewAllRecords"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="380" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnViewAllRecords"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/view all record.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" View All Records"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnViewAllRecordsMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnViewAllRecordsMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnViewAllRecordsMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="0" width="320" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelBack"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="460" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnBack"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/left-arrow.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Back"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnBackMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnBackMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnBackMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="-10" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelParent"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="430" y="0" width="1420" height="1040"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="lblChequeNo"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Cheque No :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="70" y="80" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblReceiptNo"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Receipt no : MLV-"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="20" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblDdNo"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="DD no :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="100" y="80" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblModeOfPayment"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value=" Mode of payment : "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="50" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="txtGSTNo"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value=" sffsfe22"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="630" y="50" width="70" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblDate"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value=" Date : "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="570" y="20" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtReceiptNo"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="160" y="20" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtChequeNo"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="160" y="80" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="com.toedter.calendar.JDateChooser" name="DateChosser"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="620" y="20" width="140" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Container class="javax.swing.JPanel" name="panelChild"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="140" width="870" height="900"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="lblPaymentCollage"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="the following paymemnts the collage office for the year "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="50" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblTo"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="to"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="460" y="50" width="20" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtLastDate"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="490" y="50" width="80" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblAmount"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Amount"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="700" y="130" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtFirstDate"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="360" y="50" width="90" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblReceiverSignature"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Receiver signature"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="710" y="340" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblRecievedFrom"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Recieved From :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="20" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JSeparator" name="jSeparator1"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="150" width="820" height="10"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JSeparator" name="jSeparator2"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="120" width="820" height="10"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblCourse"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Course :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="80" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblRemark"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Remark :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="380" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblSgst"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="SGST 9% "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="300" y="220" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtSumTotal"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="660" y="260" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtTotalInWords"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="130" y="310" width="410" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtCgst"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="660" y="190" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtAmountFirst"> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="txtAmountFirstActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="660" y="160" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JSeparator" name="jSeparator3"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="650" y="250" width="180" height="10"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtSgst"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="660" y="220" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblSrNo"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Sr No "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="130" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtHead"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="130" y="20" width="400" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Container class="javax.swing.JScrollPane" name="jScrollPane1"> + <AuxValues> + <AuxValue name="autoScrollPane" type="java.lang.Boolean" value="true"/> + </AuxValues> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="130" y="360" width="410" height="90"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.support.JScrollPaneSupportLayout"/> + <SubComponents> + <Component class="javax.swing.JTextPane" name="textPaneRemark"> + </Component> + </SubComponents> + </Container> + <Component class="javax.swing.JLabel" name="lblTotalInWords"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Total in words : "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="310" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JSeparator" name="jSeparator4"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="650" y="330" width="190" height="20"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel18"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Roll No :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="610" y="80" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JButton" name="btnPrint"> + <Properties> + <Property name="text" type="java.lang.String" value="Print"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="btnPrintActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="720" y="430" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblHead"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Head "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="300" y="130" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblCgst"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="CGST 9%"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="300" y="190" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JComboBox" name="comboBoxCourse1"> + <Properties> + <Property name="maximumRowCount" type="int" value="5"/> + <Property name="model" type="javax.swing.ComboBoxModel" editor="org.netbeans.modules.form.editors2.ComboBoxModelEditor"> + <StringArray count="6"> + <StringItem index="0" value="JAVA"/> + <StringItem index="1" value="WEB DEVELOPMENT"/> + <StringItem index="2" value="SPRINGBOOT"/> + <StringItem index="3" value="C"/> + <StringItem index="4" value="C++"/> + <StringItem index="5" value="PYTHON"/> + </StringArray> + </Property> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="comboBoxCourse1ActionPerformed"/> + </Events> + <AuxValues> + <AuxValue name="JavaCodeGenerator_TypeParameters" type="java.lang.String" value="<String>"/> + </AuxValues> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="130" y="80" width="350" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtHead1"> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="txtHead1ActionPerformed"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="130" y="160" width="400" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtRollNo"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="660" y="80" width="90" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Component class="javax.swing.JTextField" name="txtDDNo"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="160" y="80" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JComboBox" name="comboBoxPayment"> + <Properties> + <Property name="model" type="javax.swing.ComboBoxModel" editor="org.netbeans.modules.form.editors2.ComboBoxModelEditor"> + <StringArray count="4"> + <StringItem index="0" value="DD"/> + <StringItem index="1" value="Cheque"/> + <StringItem index="2" value="Cash"/> + <StringItem index="3" value="Card"/> + </StringArray> + </Property> + <Property name="selectedIndex" type="int" value="2"/> + </Properties> + <Events> + <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="comboBoxPaymentActionPerformed"/> + </Events> + <AuxValues> + <AuxValue name="JavaCodeGenerator_TypeParameters" type="java.lang.String" value="<String>"/> + </AuxValues> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="160" y="50" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="txtBankName1"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="160" y="110" width="150" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblBankName1"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Bank Name : "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="70" y="110" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblGSTNo1"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="33" green="33" red="33" type="rgb"/> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value=" GSTIN: "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="570" y="50" width="60" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + </SubComponents> +</Form> diff --git a/src/fees_management_system/addFees.java b/src/fees_management_system/addFees.java new file mode 100644 index 0000000..5e2ddf7 --- /dev/null +++ b/src/fees_management_system/addFees.java @@ -0,0 +1,878 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to edit this template + */ +package fees_managment_syatem; + +import java.awt.Color; +import java.sql.Connection; +import java.sql.DriverManager; +import javax.swing.JOptionPane; +import java.sql.ResultSet; +import java.sql.PreparedStatement; +import java.text.SimpleDateFormat; + +/** + * + * @author yash + */ +public class addFees extends javax.swing.JFrame { + + /** + * Creates new form addFees + */ + public addFees() { + initComponents(); + displayCashFirst(); + fillComboBox(); + int receipt_no=getReceiptNo(); + txtReceiptNo.setText(Integer.toString(receipt_no)); + } + public void displayCashFirst(){ + lblDdNo.setVisible(false); + lblChequeNo.setVisible(false); + txtChequeNo.setVisible(false); + txtDDNo.setVisible(false); + lblBankName1.setVisible(false); + txtBankName1.setVisible(false); + + } + public boolean validation(){ + if(txtHead.getText().equals("")){ + JOptionPane.showMessageDialog(this,"please enter user name."); + return false; + } + if(DateChosser.getDate() == null){ + JOptionPane.showMessageDialog(this, "please select a date."); + return false; + } + if(txtAmountFirst.getText().equals("") || txtAmountFirst.getText().matches("[0-9]+") == false){ + JOptionPane.showMessageDialog(this,"please enter amount."); + return false; + } + if(comboBoxPayment.getSelectedItem().toString().equalsIgnoreCase("Cheque")){ + if(txtChequeNo.getText().equals("")){ + JOptionPane.showMessageDialog(this,"please enter cheque number."); + return false; + } + if(txtGSTNo.getText().equals("")){ + JOptionPane.showMessageDialog(this,"please enter bank name."); + return false; + } + } + if(comboBoxPayment.getSelectedItem().toString().equalsIgnoreCase("DD")){ + if(txtDDNo.getText().equals("")){ + JOptionPane.showMessageDialog(this, "please enter dd no."); + return false; + } + if(txtBankName1.getText().equals("")){ + JOptionPane.showMessageDialog(this,"please enter bank name."); + return false; + } + } + if(comboBoxPayment.getSelectedItem().toString().equalsIgnoreCase("Card")){ + if(txtBankName1.getText().equals("")){ + JOptionPane.showMessageDialog(this,"please enter bank name"); + return false; + } + } + return true; + } + public void fillComboBox(){ + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + PreparedStatement pst=con.prepareStatement("select CNAME from course"); + ResultSet rs=pst.executeQuery(); + while(rs.next()){ + comboBoxCourse1.addItem(rs.getString("CNAME")); + } + }catch(Exception e){ + e.printStackTrace(); + } + } + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents + private void initComponents() { + + panelSideBar = new javax.swing.JPanel(); + panelLogOut = new javax.swing.JPanel(); + btnLogOut = new javax.swing.JLabel(); + panelHome = new javax.swing.JPanel(); + btnHome = new javax.swing.JLabel(); + panelSearchRecords = new javax.swing.JPanel(); + btnSearchRecords = new javax.swing.JLabel(); + panelEditCourse = new javax.swing.JPanel(); + btnEditCourse = new javax.swing.JLabel(); + panelCourseList = new javax.swing.JPanel(); + btnCourseList = new javax.swing.JLabel(); + panelViewAllRecords = new javax.swing.JPanel(); + btnViewAllRecords = new javax.swing.JLabel(); + panelBack = new javax.swing.JPanel(); + btnBack = new javax.swing.JLabel(); + panelParent = new javax.swing.JPanel(); + lblChequeNo = new javax.swing.JLabel(); + lblReceiptNo = new javax.swing.JLabel(); + lblDdNo = new javax.swing.JLabel(); + lblModeOfPayment = new javax.swing.JLabel(); + txtGSTNo = new javax.swing.JLabel(); + lblDate = new javax.swing.JLabel(); + txtReceiptNo = new javax.swing.JTextField(); + txtChequeNo = new javax.swing.JTextField(); + DateChosser = new com.toedter.calendar.JDateChooser(); + panelChild = new javax.swing.JPanel(); + lblPaymentCollage = new javax.swing.JLabel(); + lblTo = new javax.swing.JLabel(); + txtLastDate = new javax.swing.JTextField(); + lblAmount = new javax.swing.JLabel(); + txtFirstDate = new javax.swing.JTextField(); + lblReceiverSignature = new javax.swing.JLabel(); + lblRecievedFrom = new javax.swing.JLabel(); + jSeparator1 = new javax.swing.JSeparator(); + jSeparator2 = new javax.swing.JSeparator(); + lblCourse = new javax.swing.JLabel(); + lblRemark = new javax.swing.JLabel(); + lblSgst = new javax.swing.JLabel(); + txtSumTotal = new javax.swing.JTextField(); + txtTotalInWords = new javax.swing.JTextField(); + txtCgst = new javax.swing.JTextField(); + txtAmountFirst = new javax.swing.JTextField(); + jSeparator3 = new javax.swing.JSeparator(); + txtSgst = new javax.swing.JTextField(); + lblSrNo = new javax.swing.JLabel(); + txtHead = new javax.swing.JTextField(); + jScrollPane1 = new javax.swing.JScrollPane(); + textPaneRemark = new javax.swing.JTextPane(); + lblTotalInWords = new javax.swing.JLabel(); + jSeparator4 = new javax.swing.JSeparator(); + jLabel18 = new javax.swing.JLabel(); + btnPrint = new javax.swing.JButton(); + lblHead = new javax.swing.JLabel(); + lblCgst = new javax.swing.JLabel(); + comboBoxCourse1 = new javax.swing.JComboBox<>(); + txtHead1 = new javax.swing.JTextField(); + txtRollNo = new javax.swing.JTextField(); + txtDDNo = new javax.swing.JTextField(); + comboBoxPayment = new javax.swing.JComboBox<>(); + txtBankName1 = new javax.swing.JTextField(); + lblBankName1 = new javax.swing.JLabel(); + lblGSTNo1 = new javax.swing.JLabel(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + panelSideBar.setBackground(new java.awt.Color(255, 102, 102)); + panelSideBar.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + panelLogOut.setBackground(new java.awt.Color(255, 102, 102)); + panelLogOut.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelLogOut.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnLogOut.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnLogOut.setForeground(new java.awt.Color(255, 255, 255)); + btnLogOut.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/exit.png"))); // NOI18N + btnLogOut.setText(" Logout"); + btnLogOut.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnLogOutMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnLogOutMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnLogOutMouseExited(evt); + } + }); + panelLogOut.add(btnLogOut, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 0, 260, 50)); + + panelSideBar.add(panelLogOut, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 540, 320, 50)); + + panelHome.setBackground(new java.awt.Color(255, 102, 102)); + panelHome.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelHome.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnHome.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnHome.setForeground(new java.awt.Color(255, 255, 255)); + btnHome.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/home.png"))); // NOI18N + btnHome.setText(" HOME"); + btnHome.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnHomeMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnHomeMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnHomeMouseExited(evt); + } + }); + panelHome.add(btnHome, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 310, 50)); + + panelSideBar.add(panelHome, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 60, 320, 50)); + + panelSearchRecords.setBackground(new java.awt.Color(255, 102, 102)); + panelSearchRecords.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelSearchRecords.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnSearchRecords.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnSearchRecords.setForeground(new java.awt.Color(255, 255, 255)); + btnSearchRecords.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/search2.png"))); // NOI18N + btnSearchRecords.setText(" Search Records"); + btnSearchRecords.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseExited(evt); + } + }); + panelSearchRecords.add(btnSearchRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 310, 60)); + + panelSideBar.add(panelSearchRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 140, 320, 50)); + + panelEditCourse.setBackground(new java.awt.Color(255, 102, 102)); + panelEditCourse.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelEditCourse.setFont(new java.awt.Font("Segoe UI", 1, 24)); // NOI18N + panelEditCourse.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnEditCourse.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnEditCourse.setForeground(new java.awt.Color(255, 255, 255)); + btnEditCourse.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/edit2.png"))); // NOI18N + btnEditCourse.setText(" Edit Course"); + btnEditCourse.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnEditCourseMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnEditCourseMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnEditCourseMouseExited(evt); + } + }); + panelEditCourse.add(btnEditCourse, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 260, -1)); + + panelSideBar.add(panelEditCourse, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 220, 320, 50)); + + panelCourseList.setBackground(new java.awt.Color(255, 102, 102)); + panelCourseList.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelCourseList.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnCourseList.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnCourseList.setForeground(new java.awt.Color(255, 255, 255)); + btnCourseList.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/list.png"))); // NOI18N + btnCourseList.setText(" Course List"); + btnCourseList.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnCourseListMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnCourseListMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnCourseListMouseExited(evt); + } + }); + panelCourseList.add(btnCourseList, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, -10, 260, -1)); + + panelSideBar.add(panelCourseList, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 300, 320, 50)); + + panelViewAllRecords.setBackground(new java.awt.Color(255, 102, 102)); + panelViewAllRecords.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelViewAllRecords.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnViewAllRecords.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnViewAllRecords.setForeground(new java.awt.Color(255, 255, 255)); + btnViewAllRecords.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/view all record.png"))); // NOI18N + btnViewAllRecords.setText(" View All Records"); + btnViewAllRecords.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseExited(evt); + } + }); + panelViewAllRecords.add(btnViewAllRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 320, -1)); + + panelSideBar.add(panelViewAllRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 380, 320, 50)); + + panelBack.setBackground(new java.awt.Color(255, 102, 102)); + panelBack.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelBack.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnBack.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnBack.setForeground(new java.awt.Color(255, 255, 255)); + btnBack.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/left-arrow.png"))); // NOI18N + btnBack.setText(" Back"); + btnBack.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnBackMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnBackMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnBackMouseExited(evt); + } + }); + panelBack.add(btnBack, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, -10, 260, -1)); + + panelSideBar.add(panelBack, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 460, 320, 50)); + + getContentPane().add(panelSideBar, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 430, 1040)); + + panelParent.setBackground(new java.awt.Color(255, 204, 204)); + panelParent.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + lblChequeNo.setBackground(new java.awt.Color(51, 51, 51)); + lblChequeNo.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblChequeNo.setText("Cheque No :"); + panelParent.add(lblChequeNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(70, 80, -1, -1)); + + lblReceiptNo.setBackground(new java.awt.Color(51, 51, 51)); + lblReceiptNo.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblReceiptNo.setText("Receipt no : MLV-"); + panelParent.add(lblReceiptNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 20, -1, -1)); + + lblDdNo.setBackground(new java.awt.Color(51, 51, 51)); + lblDdNo.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblDdNo.setText("DD no :"); + panelParent.add(lblDdNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(100, 80, -1, -1)); + + lblModeOfPayment.setBackground(new java.awt.Color(51, 51, 51)); + lblModeOfPayment.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblModeOfPayment.setText(" Mode of payment : "); + panelParent.add(lblModeOfPayment, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 50, -1, -1)); + + txtGSTNo.setBackground(new java.awt.Color(51, 51, 51)); + txtGSTNo.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + txtGSTNo.setText(" sffsfe22"); + panelParent.add(txtGSTNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(630, 50, 70, -1)); + + lblDate.setBackground(new java.awt.Color(51, 51, 51)); + lblDate.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblDate.setText(" Date : "); + panelParent.add(lblDate, new org.netbeans.lib.awtextra.AbsoluteConstraints(570, 20, -1, -1)); + panelParent.add(txtReceiptNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 20, 150, -1)); + panelParent.add(txtChequeNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 80, 150, -1)); + panelParent.add(DateChosser, new org.netbeans.lib.awtextra.AbsoluteConstraints(620, 20, 140, -1)); + + panelChild.setBackground(new java.awt.Color(255, 204, 204)); + panelChild.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + lblPaymentCollage.setBackground(new java.awt.Color(51, 51, 51)); + lblPaymentCollage.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblPaymentCollage.setText("the following paymemnts the collage office for the year "); + panelChild.add(lblPaymentCollage, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 50, -1, -1)); + + lblTo.setBackground(new java.awt.Color(51, 51, 51)); + lblTo.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblTo.setText("to"); + panelChild.add(lblTo, new org.netbeans.lib.awtextra.AbsoluteConstraints(460, 50, 20, -1)); + panelChild.add(txtLastDate, new org.netbeans.lib.awtextra.AbsoluteConstraints(490, 50, 80, -1)); + + lblAmount.setBackground(new java.awt.Color(51, 51, 51)); + lblAmount.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblAmount.setText("Amount"); + panelChild.add(lblAmount, new org.netbeans.lib.awtextra.AbsoluteConstraints(700, 130, -1, -1)); + panelChild.add(txtFirstDate, new org.netbeans.lib.awtextra.AbsoluteConstraints(360, 50, 90, -1)); + + lblReceiverSignature.setBackground(new java.awt.Color(51, 51, 51)); + lblReceiverSignature.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblReceiverSignature.setText("Receiver signature"); + panelChild.add(lblReceiverSignature, new org.netbeans.lib.awtextra.AbsoluteConstraints(710, 340, -1, -1)); + + lblRecievedFrom.setBackground(new java.awt.Color(51, 51, 51)); + lblRecievedFrom.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblRecievedFrom.setText("Recieved From :"); + panelChild.add(lblRecievedFrom, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 20, -1, -1)); + panelChild.add(jSeparator1, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 150, 820, 10)); + panelChild.add(jSeparator2, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 120, 820, 10)); + + lblCourse.setBackground(new java.awt.Color(51, 51, 51)); + lblCourse.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblCourse.setText("Course :"); + panelChild.add(lblCourse, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 80, -1, -1)); + + lblRemark.setBackground(new java.awt.Color(51, 51, 51)); + lblRemark.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblRemark.setText("Remark :"); + panelChild.add(lblRemark, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 380, -1, -1)); + + lblSgst.setBackground(new java.awt.Color(51, 51, 51)); + lblSgst.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblSgst.setText("SGST 9% "); + panelChild.add(lblSgst, new org.netbeans.lib.awtextra.AbsoluteConstraints(300, 220, -1, -1)); + panelChild.add(txtSumTotal, new org.netbeans.lib.awtextra.AbsoluteConstraints(660, 260, 150, -1)); + panelChild.add(txtTotalInWords, new org.netbeans.lib.awtextra.AbsoluteConstraints(130, 310, 410, -1)); + panelChild.add(txtCgst, new org.netbeans.lib.awtextra.AbsoluteConstraints(660, 190, 150, -1)); + + txtAmountFirst.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + txtAmountFirstActionPerformed(evt); + } + }); + panelChild.add(txtAmountFirst, new org.netbeans.lib.awtextra.AbsoluteConstraints(660, 160, 150, -1)); + panelChild.add(jSeparator3, new org.netbeans.lib.awtextra.AbsoluteConstraints(650, 250, 180, 10)); + panelChild.add(txtSgst, new org.netbeans.lib.awtextra.AbsoluteConstraints(660, 220, 150, -1)); + + lblSrNo.setBackground(new java.awt.Color(51, 51, 51)); + lblSrNo.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblSrNo.setText("Sr No "); + panelChild.add(lblSrNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 130, -1, -1)); + panelChild.add(txtHead, new org.netbeans.lib.awtextra.AbsoluteConstraints(130, 20, 400, -1)); + + jScrollPane1.setViewportView(textPaneRemark); + + panelChild.add(jScrollPane1, new org.netbeans.lib.awtextra.AbsoluteConstraints(130, 360, 410, 90)); + + lblTotalInWords.setBackground(new java.awt.Color(51, 51, 51)); + lblTotalInWords.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblTotalInWords.setText("Total in words : "); + panelChild.add(lblTotalInWords, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 310, -1, -1)); + panelChild.add(jSeparator4, new org.netbeans.lib.awtextra.AbsoluteConstraints(650, 330, 190, 20)); + + jLabel18.setBackground(new java.awt.Color(51, 51, 51)); + jLabel18.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + jLabel18.setText("Roll No :"); + panelChild.add(jLabel18, new org.netbeans.lib.awtextra.AbsoluteConstraints(610, 80, -1, -1)); + + btnPrint.setText("Print"); + btnPrint.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + btnPrintActionPerformed(evt); + } + }); + panelChild.add(btnPrint, new org.netbeans.lib.awtextra.AbsoluteConstraints(720, 430, -1, -1)); + + lblHead.setBackground(new java.awt.Color(51, 51, 51)); + lblHead.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblHead.setText("Head "); + panelChild.add(lblHead, new org.netbeans.lib.awtextra.AbsoluteConstraints(300, 130, -1, -1)); + + lblCgst.setBackground(new java.awt.Color(51, 51, 51)); + lblCgst.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblCgst.setText("CGST 9%"); + panelChild.add(lblCgst, new org.netbeans.lib.awtextra.AbsoluteConstraints(300, 190, -1, -1)); + + comboBoxCourse1.setMaximumRowCount(5); + comboBoxCourse1.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] { "JAVA", "WEB DEVELOPMENT", "SPRINGBOOT", "C", "C++", "PYTHON" })); + comboBoxCourse1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + comboBoxCourse1ActionPerformed(evt); + } + }); + panelChild.add(comboBoxCourse1, new org.netbeans.lib.awtextra.AbsoluteConstraints(130, 80, 350, -1)); + + txtHead1.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + txtHead1ActionPerformed(evt); + } + }); + panelChild.add(txtHead1, new org.netbeans.lib.awtextra.AbsoluteConstraints(130, 160, 400, -1)); + panelChild.add(txtRollNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(660, 80, 90, -1)); + + panelParent.add(panelChild, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 140, 870, 900)); + panelParent.add(txtDDNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 80, 150, -1)); + + comboBoxPayment.setModel(new javax.swing.DefaultComboBoxModel<>(new String[] { "DD", "Cheque", "Cash", "Card" })); + comboBoxPayment.setSelectedIndex(2); + comboBoxPayment.addActionListener(new java.awt.event.ActionListener() { + public void actionPerformed(java.awt.event.ActionEvent evt) { + comboBoxPaymentActionPerformed(evt); + } + }); + panelParent.add(comboBoxPayment, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 50, 150, -1)); + panelParent.add(txtBankName1, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 110, 150, -1)); + + lblBankName1.setBackground(new java.awt.Color(51, 51, 51)); + lblBankName1.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblBankName1.setText("Bank Name : "); + panelParent.add(lblBankName1, new org.netbeans.lib.awtextra.AbsoluteConstraints(70, 110, -1, -1)); + + lblGSTNo1.setBackground(new java.awt.Color(51, 51, 51)); + lblGSTNo1.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblGSTNo1.setText(" GSTIN: "); + panelParent.add(lblGSTNo1, new org.netbeans.lib.awtextra.AbsoluteConstraints(570, 50, 60, -1)); + + getContentPane().add(panelParent, new org.netbeans.lib.awtextra.AbsoluteConstraints(430, 0, 1420, 1040)); + + pack(); + setLocationRelativeTo(null); + }// </editor-fold>//GEN-END:initComponents + + private void btnLogOutMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelLogOut.setBackground(clr); + }//GEN-LAST:event_btnLogOutMouseEntered + + private void btnLogOutMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelLogOut.setBackground(clr); + }//GEN-LAST:event_btnLogOutMouseExited + + private void btnHomeMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseEntered + Color clr=new Color(255,204,204); + panelHome.setBackground(clr); + }//GEN-LAST:event_btnHomeMouseEntered + + private void btnHomeMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelHome.setBackground(clr); + }//GEN-LAST:event_btnHomeMouseExited + + private void btnSearchRecordsMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelSearchRecords.setBackground(clr); + }//GEN-LAST:event_btnSearchRecordsMouseEntered + + private void btnSearchRecordsMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelSearchRecords.setBackground(clr); + }//GEN-LAST:event_btnSearchRecordsMouseExited + + private void btnEditCourseMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelEditCourse.setBackground(clr); + }//GEN-LAST:event_btnEditCourseMouseEntered + + private void btnEditCourseMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelEditCourse.setBackground(clr); + }//GEN-LAST:event_btnEditCourseMouseExited + + private void btnCourseListMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelCourseList.setBackground(clr); + }//GEN-LAST:event_btnCourseListMouseEntered + + private void btnCourseListMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelCourseList.setBackground(clr); + }//GEN-LAST:event_btnCourseListMouseExited + + private void btnViewAllRecordsMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelViewAllRecords.setBackground(clr); + }//GEN-LAST:event_btnViewAllRecordsMouseEntered + + private void btnViewAllRecordsMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelViewAllRecords.setBackground(clr); + }//GEN-LAST:event_btnViewAllRecordsMouseExited + + private void btnBackMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelBack.setBackground(clr); + }//GEN-LAST:event_btnBackMouseEntered + + private void btnBackMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelBack.setBackground(clr); + }//GEN-LAST:event_btnBackMouseExited + + private void comboBoxPaymentActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_comboBoxPaymentActionPerformed + // TODO add your handling code here: + if(comboBoxPayment.getSelectedIndex() == 0){ + lblDdNo.setVisible(true); + txtDDNo.setVisible(true); + lblChequeNo.setVisible(false); + txtChequeNo.setVisible(false); + lblBankName1.setVisible(true); + txtBankName1.setVisible(true); + } + if(comboBoxPayment.getSelectedIndex() == 1){ + lblDdNo.setVisible(false); + txtDDNo.setVisible(false); + lblChequeNo.setVisible(true); + txtChequeNo.setVisible(true); + lblBankName1.setVisible(true); + txtBankName1.setVisible(true); + } + if(comboBoxPayment.getSelectedIndex() == 2){ + lblDdNo.setVisible(false); + txtDDNo.setVisible(false); + lblChequeNo.setVisible(false); + txtChequeNo.setVisible(false); + lblBankName1.setVisible(false); + txtBankName1.setVisible(false); + } + if(comboBoxPayment.getSelectedItem().equals("Card")){ + lblDdNo.setVisible(false); + txtDDNo.setVisible(false); + txtGSTNo.setVisible(true); + txtGSTNo.setVisible(true); + lblChequeNo.setVisible(false); + txtChequeNo.setVisible(false); + lblBankName1.setVisible(true); + txtBankName1.setVisible(true); + } + }//GEN-LAST:event_comboBoxPaymentActionPerformed + + private void btnPrintActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnPrintActionPerformed + if(validation() == true){ + String result= insertData(); + if(result.equals("Success")){ + JOptionPane.showMessageDialog(this, "Records Insert SuccessFully"); + printReceipt p =new printReceipt(); + p.setVisible(true); + this.dispose(); + } + else{ + JOptionPane.showMessageDialog(this, "Records Insert Failed"); + } + } + }//GEN-LAST:event_btnPrintActionPerformed + + private void txtAmountFirstActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txtAmountFirstActionPerformed + Float amnt=Float.parseFloat(txtAmountFirst.getText()); + Float cgst=(float)(amnt * 0.09); + Float sgst=(float)(amnt * 0.09); + txtCgst.setText(cgst.toString()); + txtSgst.setText(sgst.toString()); + float total=amnt+cgst+sgst; + txtSumTotal.setText(Float.toString(total)); + txtTotalInWords.setText(NumberToWordsConverter.convert((int)total)+" only /-"); + }//GEN-LAST:event_txtAmountFirstActionPerformed + + private void txtHead1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_txtHead1ActionPerformed + + }//GEN-LAST:event_txtHead1ActionPerformed + + private void comboBoxCourse1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_comboBoxCourse1ActionPerformed + // TODO add your handling code here: + txtHead1.setText(comboBoxCourse1.getSelectedItem().toString()); + }//GEN-LAST:event_comboBoxCourse1ActionPerformed + + private void btnHomeMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseClicked + HomePage home=new HomePage(); + home.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnHomeMouseClicked + + private void btnSearchRecordsMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseClicked + SearchRecords searchrecords=new SearchRecords(); + searchrecords.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnSearchRecordsMouseClicked + + private void btnEditCourseMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseClicked + EditCourse edit=new EditCourse(); + edit.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnEditCourseMouseClicked + + private void btnCourseListMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseClicked + // TODO add your handling code here: + }//GEN-LAST:event_btnCourseListMouseClicked + + private void btnViewAllRecordsMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseClicked + ViewAllRecords viewrecords=new ViewAllRecords(); + viewrecords.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnViewAllRecordsMouseClicked + + private void btnBackMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseClicked + HomePage home=new HomePage(); + home.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnBackMouseClicked + + private void btnLogOutMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseClicked + this.dispose(); + }//GEN-LAST:event_btnLogOutMouseClicked + public int getReceiptNo(){ + int receipt_no=0; + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + PreparedStatement pst=con.prepareStatement("select max(recieptNo) from fees_details"); + ResultSet rs=pst.executeQuery(); + if(rs.next() == true){ + receipt_no=rs.getInt(1); + } + }catch(Exception e){ + e.printStackTrace(); + } + return receipt_no+1; + } + public String insertData(){ + String status=""; + int recieptNo=Integer.parseInt(txtReceiptNo.getText()); + String studentName=txtHead.getText(); + String rollNo=txtRollNo.getText(); + String paymentMode=comboBoxPayment.getSelectedItem().toString(); + String chequeNo=txtChequeNo.getText(); + String bankName=txtBankName1.getText(); + String ddNo=txtDDNo.getText(); + String courseName=txtHead1.getText(); + String gstin=txtGSTNo.getText(); + float totalAmount=Float.parseFloat(txtSumTotal.getText()); + SimpleDateFormat dateFormat =new SimpleDateFormat("yyyy-MM-dd"); + String date=dateFormat.format(DateChosser.getDate()); + float initialAmount=Float.parseFloat(txtAmountFirst.getText()); + float cgst=Float.parseFloat(txtCgst.getText()); + float sgst=Float.parseFloat(txtSgst.getText()); + String totalInWords=txtTotalInWords.getText(); + String remark=textPaneRemark.getText(); + int year1=Integer.parseInt(txtFirstDate.getText()); + int year2=Integer.parseInt(txtLastDate.getText()); + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + PreparedStatement pst=con.prepareStatement("insert into fees_details values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)"); + pst.setInt(1,recieptNo); + pst.setString(2, studentName); + pst.setString(3,rollNo); + pst.setString(4,paymentMode); + pst.setString(5,chequeNo); + pst.setString(6, bankName); + pst.setString(7,ddNo); + pst.setString(8,courseName); + pst.setString(9,gstin); + pst.setFloat(10,totalAmount); + pst.setString(11,date); + pst.setFloat(12, initialAmount); + pst.setFloat(13,cgst); + pst.setFloat(14,sgst); + pst.setString(15,totalInWords); + pst.setString(16,remark); + pst.setInt(17,year1); + pst.setInt(18,year2); + int rowCount=pst.executeUpdate(); + if(rowCount==1){ + status="Success"; + } + else{ + status="Failed"; + } + }catch(Exception e){ + e.printStackTrace(); + } + return status; + } + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + /* Set the Nimbus look and feel */ + //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "> + /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. + * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html + */ + try { + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + if ("Nimbus".equals(info.getName())) { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + } + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(addFees.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(addFees.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(addFees.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(addFees.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + //</editor-fold> + + /* Create and display the form */ + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new addFees().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private com.toedter.calendar.JDateChooser DateChosser; + private javax.swing.JLabel btnBack; + private javax.swing.JLabel btnCourseList; + private javax.swing.JLabel btnEditCourse; + private javax.swing.JLabel btnHome; + private javax.swing.JLabel btnLogOut; + private javax.swing.JButton btnPrint; + private javax.swing.JLabel btnSearchRecords; + private javax.swing.JLabel btnViewAllRecords; + private javax.swing.JComboBox<String> comboBoxCourse1; + private javax.swing.JComboBox<String> comboBoxPayment; + private javax.swing.JLabel jLabel18; + private javax.swing.JScrollPane jScrollPane1; + private javax.swing.JSeparator jSeparator1; + private javax.swing.JSeparator jSeparator2; + private javax.swing.JSeparator jSeparator3; + private javax.swing.JSeparator jSeparator4; + private javax.swing.JLabel lblAmount; + private javax.swing.JLabel lblBankName1; + private javax.swing.JLabel lblCgst; + private javax.swing.JLabel lblChequeNo; + private javax.swing.JLabel lblCourse; + private javax.swing.JLabel lblDate; + private javax.swing.JLabel lblDdNo; + private javax.swing.JLabel lblGSTNo1; + private javax.swing.JLabel lblHead; + private javax.swing.JLabel lblModeOfPayment; + private javax.swing.JLabel lblPaymentCollage; + private javax.swing.JLabel lblReceiptNo; + private javax.swing.JLabel lblReceiverSignature; + private javax.swing.JLabel lblRecievedFrom; + private javax.swing.JLabel lblRemark; + private javax.swing.JLabel lblSgst; + private javax.swing.JLabel lblSrNo; + private javax.swing.JLabel lblTo; + private javax.swing.JLabel lblTotalInWords; + private javax.swing.JPanel panelBack; + private javax.swing.JPanel panelChild; + private javax.swing.JPanel panelCourseList; + private javax.swing.JPanel panelEditCourse; + private javax.swing.JPanel panelHome; + private javax.swing.JPanel panelLogOut; + private javax.swing.JPanel panelParent; + private javax.swing.JPanel panelSearchRecords; + private javax.swing.JPanel panelSideBar; + private javax.swing.JPanel panelViewAllRecords; + private javax.swing.JTextPane textPaneRemark; + private javax.swing.JTextField txtAmountFirst; + private javax.swing.JTextField txtBankName1; + private javax.swing.JTextField txtCgst; + private javax.swing.JTextField txtChequeNo; + private javax.swing.JTextField txtDDNo; + private javax.swing.JTextField txtFirstDate; + private javax.swing.JLabel txtGSTNo; + private javax.swing.JTextField txtHead; + private javax.swing.JTextField txtHead1; + private javax.swing.JTextField txtLastDate; + private javax.swing.JTextField txtReceiptNo; + private javax.swing.JTextField txtRollNo; + private javax.swing.JTextField txtSgst; + private javax.swing.JTextField txtSumTotal; + private javax.swing.JTextField txtTotalInWords; + // End of variables declaration//GEN-END:variables +} diff --git a/src/fees_management_system/copyRightPage.form b/src/fees_management_system/copyRightPage.form new file mode 100644 index 0000000..d02357a --- /dev/null +++ b/src/fees_management_system/copyRightPage.form @@ -0,0 +1,152 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<Form version="1.3" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.JFrameFormInfo"> + <Properties> + <Property name="defaultCloseOperation" type="int" value="3"/> + </Properties> + <SyntheticProperties> + <SyntheticProperty name="formSizePolicy" type="int" value="1"/> + <SyntheticProperty name="generateCenter" type="boolean" value="true"/> + </SyntheticProperties> + <AuxValues> + <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/> + <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/> + <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/> + <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,1,79,0,0,2,20"/> + </AuxValues> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="jPanel1"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="cc" green="cc" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="0" width="530" height="340"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JSeparator" name="jSeparator1"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="50" width="500" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JSeparator" name="jSeparator2"> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="286" width="530" height="10"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel2"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/back1.png"/> + </Property> + <Property name="verticalTextPosition" type="int" value="1"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="jLabel2MouseClicked"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="300" width="40" height="30"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel1"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/copyright.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" 2021, All Rights Reserved"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="190" y="10" width="250" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel3"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="parts. without the specific written permission of the owner."/> + <Property name="verticalAlignment" type="int" value="1"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="140" width="470" height="30"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel4"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="This Software is developed by MR. Yash Gupta."/> + <Property name="verticalAlignment" type="int" value="1"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="180" width="440" height="30"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel5"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="No part of this software may reproduced in whole or in "/> + <Property name="verticalAlignment" type="int" value="1"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="30" y="100" width="450" height="30"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel6"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="18" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="CopyRights"/> + <Property name="verticalTextPosition" type="int" value="1"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="90" y="10" width="-1" height="30"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + </SubComponents> +</Form> diff --git a/src/fees_management_system/copyRightPage.java b/src/fees_management_system/copyRightPage.java new file mode 100644 index 0000000..a66ab03 --- /dev/null +++ b/src/fees_management_system/copyRightPage.java @@ -0,0 +1,143 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to edit this template + */ +package fees_managment_syatem; + +import javax.swing.JFrame; + +/** + * + * @author yash + */ +public class copyRightPage extends javax.swing.JFrame { + + /** + * Creates new form copyRightPage + */ + public copyRightPage() { + initComponents(); + setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); + } + + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents + private void initComponents() { + + jPanel1 = new javax.swing.JPanel(); + jSeparator1 = new javax.swing.JSeparator(); + jSeparator2 = new javax.swing.JSeparator(); + jLabel2 = new javax.swing.JLabel(); + jLabel1 = new javax.swing.JLabel(); + jLabel3 = new javax.swing.JLabel(); + jLabel4 = new javax.swing.JLabel(); + jLabel5 = new javax.swing.JLabel(); + jLabel6 = new javax.swing.JLabel(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + jPanel1.setBackground(new java.awt.Color(255, 204, 204)); + jPanel1.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + jPanel1.add(jSeparator1, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 50, 500, -1)); + jPanel1.add(jSeparator2, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 286, 530, 10)); + + jLabel2.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + jLabel2.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/back1.png"))); // NOI18N + jLabel2.setVerticalTextPosition(javax.swing.SwingConstants.TOP); + jLabel2.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + jLabel2MouseClicked(evt); + } + }); + jPanel1.add(jLabel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 300, 40, 30)); + + jLabel1.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + jLabel1.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/copyright.png"))); // NOI18N + jLabel1.setText(" 2021, All Rights Reserved"); + jPanel1.add(jLabel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(190, 10, 250, -1)); + + jLabel3.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + jLabel3.setText("parts. without the specific written permission of the owner."); + jLabel3.setVerticalAlignment(javax.swing.SwingConstants.TOP); + jPanel1.add(jLabel3, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 140, 470, 30)); + + jLabel4.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + jLabel4.setText("This Software is developed by MR. Yash Gupta."); + jLabel4.setVerticalAlignment(javax.swing.SwingConstants.TOP); + jPanel1.add(jLabel4, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 180, 440, 30)); + + jLabel5.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + jLabel5.setText("No part of this software may reproduced in whole or in "); + jLabel5.setVerticalAlignment(javax.swing.SwingConstants.TOP); + jPanel1.add(jLabel5, new org.netbeans.lib.awtextra.AbsoluteConstraints(30, 100, 450, 30)); + + jLabel6.setFont(new java.awt.Font("Times New Roman", 1, 18)); // NOI18N + jLabel6.setText("CopyRights"); + jLabel6.setVerticalTextPosition(javax.swing.SwingConstants.TOP); + jPanel1.add(jLabel6, new org.netbeans.lib.awtextra.AbsoluteConstraints(90, 10, -1, 30)); + + getContentPane().add(jPanel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 530, 340)); + + pack(); + setLocationRelativeTo(null); + }// </editor-fold>//GEN-END:initComponents + + private void jLabel2MouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jLabel2MouseClicked + HomePage page=new HomePage(); + page.setVisible(true); + this.dispose(); + }//GEN-LAST:event_jLabel2MouseClicked + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + /* Set the Nimbus look and feel */ + //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "> + /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. + * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html + */ + try { + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + if ("Nimbus".equals(info.getName())) { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + } + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(copyRightPage.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(copyRightPage.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(copyRightPage.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(copyRightPage.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + //</editor-fold> + + /* Create and display the form */ + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new copyRightPage().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JLabel jLabel1; + private javax.swing.JLabel jLabel2; + private javax.swing.JLabel jLabel3; + private javax.swing.JLabel jLabel4; + private javax.swing.JLabel jLabel5; + private javax.swing.JLabel jLabel6; + private javax.swing.JPanel jPanel1; + private javax.swing.JSeparator jSeparator1; + private javax.swing.JSeparator jSeparator2; + // End of variables declaration//GEN-END:variables +} diff --git a/src/fees_management_system/printReceipt.form b/src/fees_management_system/printReceipt.form new file mode 100644 index 0000000..0f52128 --- /dev/null +++ b/src/fees_management_system/printReceipt.form @@ -0,0 +1,1015 @@ +<?xml version="1.0" encoding="UTF-8" ?> + +<Form version="1.3" maxVersion="1.9" type="org.netbeans.modules.form.forminfo.JFrameFormInfo"> + <Properties> + <Property name="defaultCloseOperation" type="int" value="3"/> + </Properties> + <SyntheticProperties> + <SyntheticProperty name="formSizePolicy" type="int" value="1"/> + <SyntheticProperty name="generateCenter" type="boolean" value="true"/> + </SyntheticProperties> + <AuxValues> + <AuxValue name="FormSettings_autoResourcing" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_autoSetComponentName" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_generateFQN" type="java.lang.Boolean" value="true"/> + <AuxValue name="FormSettings_generateMnemonicsCode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_i18nAutoMode" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_layoutCodeTarget" type="java.lang.Integer" value="1"/> + <AuxValue name="FormSettings_listenerGenerationStyle" type="java.lang.Integer" value="0"/> + <AuxValue name="FormSettings_variablesLocal" type="java.lang.Boolean" value="false"/> + <AuxValue name="FormSettings_variablesModifier" type="java.lang.Integer" value="2"/> + <AuxValue name="designerSize" type="java.awt.Dimension" value="-84,-19,0,5,115,114,0,18,106,97,118,97,46,97,119,116,46,68,105,109,101,110,115,105,111,110,65,-114,-39,-41,-84,95,68,20,2,0,2,73,0,6,104,101,105,103,104,116,73,0,5,119,105,100,116,104,120,112,0,0,2,-117,0,0,4,-4"/> + </AuxValues> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="panelSideBar"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="0" width="430" height="1090"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Container class="javax.swing.JPanel" name="panelEdit"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="580" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnEdit"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/edit2.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Edit"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="4" width="260" height="50"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelHome"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="30" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnHome"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/home.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" HOME"/> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnHomeMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnHomeMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="310" height="50"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelSearchRecords"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="100" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnSearchRecords"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/search2.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Search Records"/> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnSearchRecordsMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnSearchRecordsMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="310" height="60"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelEditCourse"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="24" style="1"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="170" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnEditCourse"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/edit2.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Edit Course"/> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditCourseMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnEditCourseMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelCourseList"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="240" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnCourseList"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/list.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Course List"/> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnCourseListMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnCourseListMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="0" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelViewAllRecords"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="310" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnViewAllRecords"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/view all record.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" View All Records"/> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnViewAllRecordsMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnViewAllRecordsMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="0" width="310" height="50"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelBack"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="380" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnBack"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/left-arrow.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Back"/> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnBackMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnBackMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="-10" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelLogOut"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="panelLogOutMouseEntered"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="450" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnLogOut"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/logout.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Logout"/> + </Properties> + <Events> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnLogOutMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnLogOutMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="-10" width="260" height="-1"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelPrint"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="66" green="66" red="ff" type="rgb"/> + </Property> + <Property name="border" type="javax.swing.border.Border" editor="org.netbeans.modules.form.editors2.BorderEditor"> + <Border info="org.netbeans.modules.form.compat2.border.BevelBorderInfo"> + <BevelBorder/> + </Border> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="80" y="510" width="320" height="50"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="btnPrint"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/printer-.png"/> + </Property> + <Property name="text" type="java.lang.String" value=" Print"/> + </Properties> + <Events> + <EventHandler event="mouseClicked" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnPrintMouseClicked"/> + <EventHandler event="mouseEntered" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnPrintMouseEntered"/> + <EventHandler event="mouseExited" listener="java.awt.event.MouseListener" parameters="java.awt.event.MouseEvent" handler="btnPrintMouseExited"/> + </Events> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="0" width="260" height="50"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + </SubComponents> + </Container> + <Container class="javax.swing.JPanel" name="panelPrintReceipt"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="ff" green="ff" red="ff" type="rgb"/> + </Property> + <Property name="preferredSize" type="java.awt.Dimension" editor="org.netbeans.beaninfo.editors.DimensionEditor"> + <Dimension value="[1200, 860]"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="450" y="40" width="810" height="590"/> + </Constraint> + </Constraints> + + <Layout class="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout"> + <Property name="useNullLayout" type="boolean" value="false"/> + </Layout> + <SubComponents> + <Component class="javax.swing.JLabel" name="jLabel1"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="b5" green="89" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="Pur Road, Pratap Nagar, Bhilwara, Rajasthan 311001"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="380" y="90" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel2"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="24" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="b5" green="89" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="Manikya Lal Verma"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="440" y="10" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel3"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="36" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="b5" green="89" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="Textile & Engineering College "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="300" y="40" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel5"> + <Properties> + <Property name="icon" type="javax.swing.Icon" editor="org.netbeans.modules.form.editors2.IconEditor"> + <Image iconType="3" name="/fees_managment_syatem/icon/mlv_logo (1).jpg"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="160" y="10" width="100" height="90"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel4"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Receipt No : MLV- "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="130" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel6"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Payment Mode : "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="160" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="txtChequeDD"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="cheque_dd :"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="190" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="txtBankName"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Bank Name : "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="220" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel10"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Received From : "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="250" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel11"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="The following payment int the college office for the year : "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="280" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel12"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Date : "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="610" y="130" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel13"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="GSTIN : "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="610" y="160" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JSeparator" name="jSeparator2"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="0" green="0" red="0" type="rgb"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="0" green="0" red="0" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="327" width="720" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JSeparator" name="jSeparator3"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="0" green="0" red="0" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="10" y="350" width="720" height="10"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel14"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Sr No"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="50" y="330" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel15"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Heads"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="250" y="330" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel16"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Amounts(Rs)"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="570" y="330" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblReceiptNo"> + <Properties> + <Property name="text" type="java.lang.String" value="jLabel17"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="160" y="130" width="140" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblPaymentMode"> + <Properties> + <Property name="text" type="java.lang.String" value="jLabel18"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="160" y="160" width="140" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblChequeDD"> + <Properties> + <Property name="text" type="java.lang.String" value="jLabel20"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="160" y="190" width="140" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblBankName"> + <Properties> + <Property name="text" type="java.lang.String" value="jLabel21"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="160" y="220" width="140" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblReceivedFrom"> + <Properties> + <Property name="text" type="java.lang.String" value="jLabel22"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="160" y="250" width="140" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblYear1"> + <Properties> + <Property name="text" type="java.lang.String" value="jLabel23"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="350" y="280" width="50" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel24"> + <Properties> + <Property name="text" type="java.lang.String" value="-"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="400" y="280" width="10" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblYear2"> + <Properties> + <Property name="text" type="java.lang.String" value="jLabel25"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="420" y="280" width="60" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblDate"> + <Properties> + <Property name="text" type="java.lang.String" value="jLabel26"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="660" y="130" width="110" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblGSTIN"> + <Properties> + <Property name="text" type="java.lang.String" value="jLabel27"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="660" y="160" width="90" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel19"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="1."/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="50" y="370" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblCourseName"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value=" jLabel28"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="170" y="360" width="200" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel29"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="CGST 9%"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="240" y="390" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel30"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="SGST 9%"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="240" y="420" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblInitialAmount"> + <Properties> + <Property name="text" type="java.lang.String" value="jLabel31"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="590" y="360" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblCGST"> + <Properties> + <Property name="text" type="java.lang.String" value="jLabel32"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="590" y="390" width="-1" height="20"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblSGST"> + <Properties> + <Property name="text" type="java.lang.String" value="jLabel33"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="590" y="420" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JSeparator" name="jSeparator4"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="0" green="0" red="0" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="520" y="450" width="190" height="10"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblTotal"> + <Properties> + <Property name="text" type="java.lang.String" value="jLabel34"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="590" y="460" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel7"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Total In Words : "/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="20" y="520" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="lblTotalInWords"> + <Properties> + <Property name="text" type="java.lang.String" value="jLabel35"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="120" y="520" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JSeparator" name="jSeparator5"> + <Properties> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="0" green="0" red="0" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="520" y="550" width="200" height="10"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JLabel" name="jLabel36"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Segoe UI" size="12" style="1"/> + </Property> + <Property name="text" type="java.lang.String" value="Receiver Signature"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="560" y="560" width="-1" height="-1"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="jTextField2"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="b5" green="89" red="0" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="0" y="110" width="810" height="10"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> + </Container> + <Component class="javax.swing.JLabel" name="jLabel17"> + <Properties> + <Property name="font" type="java.awt.Font" editor="org.netbeans.beaninfo.editors.FontEditor"> + <Font name="Times New Roman" size="14" style="1"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="b5" green="89" red="0" type="rgb"/> + </Property> + <Property name="text" type="java.lang.String" value="PRINT RECEIPT"/> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="820" y="10" width="110" height="20"/> + </Constraint> + </Constraints> + </Component> + <Component class="javax.swing.JTextField" name="jTextField1"> + <Properties> + <Property name="background" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="b5" green="89" red="0" type="rgb"/> + </Property> + <Property name="foreground" type="java.awt.Color" editor="org.netbeans.beaninfo.editors.ColorEditor"> + <Color blue="b5" green="89" red="0" type="rgb"/> + </Property> + </Properties> + <Constraints> + <Constraint layoutClass="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout" value="org.netbeans.modules.form.compat2.layouts.DesignAbsoluteLayout$AbsoluteConstraintsDescription"> + <AbsoluteConstraints x="800" y="30" width="140" height="5"/> + </Constraint> + </Constraints> + </Component> + </SubComponents> +</Form> diff --git a/src/fees_management_system/printReceipt.java b/src/fees_management_system/printReceipt.java new file mode 100644 index 0000000..6726b2f --- /dev/null +++ b/src/fees_management_system/printReceipt.java @@ -0,0 +1,765 @@ +/* + * Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license + * Click nbfs://nbhost/SystemFileSystem/Templates/GUIForms/JFrame.java to edit this template + */ +package fees_managment_syatem; + +import java.awt.Color; +import java.awt.Container; +import java.awt.Graphics; +import java.awt.Graphics2D; +import java.awt.print.PageFormat; +import java.awt.print.Printable; +import java.awt.print.PrinterException; +import java.awt.print.PrinterJob; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +/** + * + * @author yash + */ +public class printReceipt extends javax.swing.JFrame { + + /** + * Creates new form printReceipt + */ + public printReceipt() { + initComponents(); + getRecords(); + Container c=getContentPane(); + c.setBackground(new Color(255,204,204)); + } +public void getRecords(){ + try{ + Class.forName("com.mysql.cj.jdbc.Driver"); + Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/fees_managment?zeroDateTimeBehavior=CONVERT_TO_NULL","root",""); + PreparedStatement pst=con.prepareStatement("SELECT * FROM fees_details ORDER BY recieptNo DESC LIMIT 1"); + ResultSet rs=pst.executeQuery(); + rs.next(); + lblReceiptNo.setText(rs.getString("recieptNo")); + lblPaymentMode.setText(rs.getString("paymentMode")); + String paymentMode=rs.getString("paymentMode"); + if(paymentMode.equalsIgnoreCase("Cash")){ + txtChequeDD.setText("Cheque No : "); + lblChequeDD.setText("-"); + lblBankName.setText("-"); + } + if(paymentMode.equalsIgnoreCase("Cheque")){ + txtChequeDD.setText("Cheque No "); + lblChequeDD.setText(rs.getString("chequeNo")); + lblBankName.setText(rs.getString("bankName")); + } + if(paymentMode.equalsIgnoreCase("dd")){ + txtChequeDD.setText("DD No : "); + lblChequeDD.setText(rs.getString("ddNo")); + lblBankName.setText(rs.getString("bankName")); + } + if(paymentMode.equalsIgnoreCase("card")){ + txtChequeDD.setText("Cheque No : "); + lblChequeDD.setText("-"); + lblBankName.setText("bankName"); + } + lblReceivedFrom.setText(rs.getString("studentName")); + lblDate.setText(rs.getString("date")); + lblGSTIN.setText(rs.getString("gstin")); + lblYear1.setText(rs.getString("year1")); + lblYear2.setText(rs.getString("year2")); + lblCourseName.setText(rs.getString("courseName")); + lblInitialAmount.setText(rs.getString("amount")); + lblCGST.setText(rs.getString("cgst")); + lblSGST.setText(rs.getString("sgst")); + lblTotal.setText(rs.getString("totalAmount")); + lblTotalInWords.setText(rs.getString("totalInWords")); + }catch(Exception e){ + e.printStackTrace(); + } +} + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents + private void initComponents() { + + panelSideBar = new javax.swing.JPanel(); + panelEdit = new javax.swing.JPanel(); + btnEdit = new javax.swing.JLabel(); + panelHome = new javax.swing.JPanel(); + btnHome = new javax.swing.JLabel(); + panelSearchRecords = new javax.swing.JPanel(); + btnSearchRecords = new javax.swing.JLabel(); + panelEditCourse = new javax.swing.JPanel(); + btnEditCourse = new javax.swing.JLabel(); + panelCourseList = new javax.swing.JPanel(); + btnCourseList = new javax.swing.JLabel(); + panelViewAllRecords = new javax.swing.JPanel(); + btnViewAllRecords = new javax.swing.JLabel(); + panelBack = new javax.swing.JPanel(); + btnBack = new javax.swing.JLabel(); + panelLogOut = new javax.swing.JPanel(); + btnLogOut = new javax.swing.JLabel(); + panelPrint = new javax.swing.JPanel(); + btnPrint = new javax.swing.JLabel(); + panelPrintReceipt = new javax.swing.JPanel(); + jLabel1 = new javax.swing.JLabel(); + jLabel2 = new javax.swing.JLabel(); + jLabel3 = new javax.swing.JLabel(); + jLabel5 = new javax.swing.JLabel(); + jLabel4 = new javax.swing.JLabel(); + jLabel6 = new javax.swing.JLabel(); + txtChequeDD = new javax.swing.JLabel(); + txtBankName = new javax.swing.JLabel(); + jLabel10 = new javax.swing.JLabel(); + jLabel11 = new javax.swing.JLabel(); + jLabel12 = new javax.swing.JLabel(); + jLabel13 = new javax.swing.JLabel(); + jSeparator2 = new javax.swing.JSeparator(); + jSeparator3 = new javax.swing.JSeparator(); + jLabel14 = new javax.swing.JLabel(); + jLabel15 = new javax.swing.JLabel(); + jLabel16 = new javax.swing.JLabel(); + lblReceiptNo = new javax.swing.JLabel(); + lblPaymentMode = new javax.swing.JLabel(); + lblChequeDD = new javax.swing.JLabel(); + lblBankName = new javax.swing.JLabel(); + lblReceivedFrom = new javax.swing.JLabel(); + lblYear1 = new javax.swing.JLabel(); + jLabel24 = new javax.swing.JLabel(); + lblYear2 = new javax.swing.JLabel(); + lblDate = new javax.swing.JLabel(); + lblGSTIN = new javax.swing.JLabel(); + jLabel19 = new javax.swing.JLabel(); + lblCourseName = new javax.swing.JLabel(); + jLabel29 = new javax.swing.JLabel(); + jLabel30 = new javax.swing.JLabel(); + lblInitialAmount = new javax.swing.JLabel(); + lblCGST = new javax.swing.JLabel(); + lblSGST = new javax.swing.JLabel(); + jSeparator4 = new javax.swing.JSeparator(); + lblTotal = new javax.swing.JLabel(); + jLabel7 = new javax.swing.JLabel(); + lblTotalInWords = new javax.swing.JLabel(); + jSeparator5 = new javax.swing.JSeparator(); + jLabel36 = new javax.swing.JLabel(); + jTextField2 = new javax.swing.JTextField(); + jLabel17 = new javax.swing.JLabel(); + jTextField1 = new javax.swing.JTextField(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + getContentPane().setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + panelSideBar.setBackground(new java.awt.Color(255, 102, 102)); + panelSideBar.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + panelEdit.setBackground(new java.awt.Color(255, 102, 102)); + panelEdit.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelEdit.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnEdit.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnEdit.setForeground(new java.awt.Color(255, 255, 255)); + btnEdit.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/edit2.png"))); // NOI18N + btnEdit.setText(" Edit"); + btnEdit.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnEditMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnEditMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnEditMouseExited(evt); + } + }); + panelEdit.add(btnEdit, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 4, 260, 50)); + + panelSideBar.add(panelEdit, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 580, 320, 50)); + + panelHome.setBackground(new java.awt.Color(255, 102, 102)); + panelHome.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelHome.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnHome.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnHome.setForeground(new java.awt.Color(255, 255, 255)); + btnHome.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/home.png"))); // NOI18N + btnHome.setText(" HOME"); + btnHome.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnHomeMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnHomeMouseExited(evt); + } + }); + panelHome.add(btnHome, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 310, 50)); + + panelSideBar.add(panelHome, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 30, 320, 50)); + + panelSearchRecords.setBackground(new java.awt.Color(255, 102, 102)); + panelSearchRecords.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelSearchRecords.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnSearchRecords.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnSearchRecords.setForeground(new java.awt.Color(255, 255, 255)); + btnSearchRecords.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/search2.png"))); // NOI18N + btnSearchRecords.setText(" Search Records"); + btnSearchRecords.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnSearchRecordsMouseExited(evt); + } + }); + panelSearchRecords.add(btnSearchRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 310, 60)); + + panelSideBar.add(panelSearchRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 100, 320, 50)); + + panelEditCourse.setBackground(new java.awt.Color(255, 102, 102)); + panelEditCourse.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelEditCourse.setFont(new java.awt.Font("Segoe UI", 1, 24)); // NOI18N + panelEditCourse.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnEditCourse.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnEditCourse.setForeground(new java.awt.Color(255, 255, 255)); + btnEditCourse.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/edit2.png"))); // NOI18N + btnEditCourse.setText(" Edit Course"); + btnEditCourse.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnEditCourseMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnEditCourseMouseExited(evt); + } + }); + panelEditCourse.add(btnEditCourse, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 260, -1)); + + panelSideBar.add(panelEditCourse, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 170, 320, 50)); + + panelCourseList.setBackground(new java.awt.Color(255, 102, 102)); + panelCourseList.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelCourseList.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnCourseList.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnCourseList.setForeground(new java.awt.Color(255, 255, 255)); + btnCourseList.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/list.png"))); // NOI18N + btnCourseList.setText(" Course List"); + btnCourseList.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnCourseListMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnCourseListMouseExited(evt); + } + }); + panelCourseList.add(btnCourseList, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 0, 260, -1)); + + panelSideBar.add(panelCourseList, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 240, 320, 50)); + + panelViewAllRecords.setBackground(new java.awt.Color(255, 102, 102)); + panelViewAllRecords.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelViewAllRecords.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnViewAllRecords.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnViewAllRecords.setForeground(new java.awt.Color(255, 255, 255)); + btnViewAllRecords.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/view all record.png"))); // NOI18N + btnViewAllRecords.setText(" View All Records"); + btnViewAllRecords.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnViewAllRecordsMouseExited(evt); + } + }); + panelViewAllRecords.add(btnViewAllRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 310, 50)); + + panelSideBar.add(panelViewAllRecords, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 310, 320, 50)); + + panelBack.setBackground(new java.awt.Color(255, 102, 102)); + panelBack.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelBack.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnBack.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnBack.setForeground(new java.awt.Color(255, 255, 255)); + btnBack.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/left-arrow.png"))); // NOI18N + btnBack.setText(" Back"); + btnBack.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnBackMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnBackMouseExited(evt); + } + }); + panelBack.add(btnBack, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, -10, 260, -1)); + + panelSideBar.add(panelBack, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 380, 320, 50)); + + panelLogOut.setBackground(new java.awt.Color(255, 102, 102)); + panelLogOut.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelLogOut.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + panelLogOutMouseEntered(evt); + } + }); + panelLogOut.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnLogOut.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnLogOut.setForeground(new java.awt.Color(255, 255, 255)); + btnLogOut.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/logout.png"))); // NOI18N + btnLogOut.setText(" Logout"); + btnLogOut.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnLogOutMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnLogOutMouseExited(evt); + } + }); + panelLogOut.add(btnLogOut, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, -10, 260, -1)); + + panelSideBar.add(panelLogOut, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 450, 320, 50)); + + panelPrint.setBackground(new java.awt.Color(255, 102, 102)); + panelPrint.setBorder(javax.swing.BorderFactory.createBevelBorder(javax.swing.border.BevelBorder.RAISED)); + panelPrint.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + btnPrint.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + btnPrint.setForeground(new java.awt.Color(255, 255, 255)); + btnPrint.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/printer-.png"))); // NOI18N + btnPrint.setText(" Print"); + btnPrint.addMouseListener(new java.awt.event.MouseAdapter() { + public void mouseClicked(java.awt.event.MouseEvent evt) { + btnPrintMouseClicked(evt); + } + public void mouseEntered(java.awt.event.MouseEvent evt) { + btnPrintMouseEntered(evt); + } + public void mouseExited(java.awt.event.MouseEvent evt) { + btnPrintMouseExited(evt); + } + }); + panelPrint.add(btnPrint, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 260, 50)); + + panelSideBar.add(panelPrint, new org.netbeans.lib.awtextra.AbsoluteConstraints(80, 510, 320, 50)); + + getContentPane().add(panelSideBar, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 0, 430, 1090)); + + panelPrintReceipt.setBackground(new java.awt.Color(255, 255, 255)); + panelPrintReceipt.setPreferredSize(new java.awt.Dimension(1200, 860)); + panelPrintReceipt.setLayout(new org.netbeans.lib.awtextra.AbsoluteLayout()); + + jLabel1.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + jLabel1.setForeground(new java.awt.Color(0, 137, 181)); + jLabel1.setText("Pur Road, Pratap Nagar, Bhilwara, Rajasthan 311001"); + panelPrintReceipt.add(jLabel1, new org.netbeans.lib.awtextra.AbsoluteConstraints(380, 90, -1, -1)); + + jLabel2.setFont(new java.awt.Font("Times New Roman", 1, 24)); // NOI18N + jLabel2.setForeground(new java.awt.Color(0, 137, 181)); + jLabel2.setText("Manikya Lal Verma"); + panelPrintReceipt.add(jLabel2, new org.netbeans.lib.awtextra.AbsoluteConstraints(440, 10, -1, -1)); + + jLabel3.setFont(new java.awt.Font("Times New Roman", 1, 36)); // NOI18N + jLabel3.setForeground(new java.awt.Color(0, 137, 181)); + jLabel3.setText("Textile & Engineering College "); + panelPrintReceipt.add(jLabel3, new org.netbeans.lib.awtextra.AbsoluteConstraints(300, 40, -1, -1)); + + jLabel5.setIcon(new javax.swing.ImageIcon(getClass().getResource("/fees_managment_syatem/icon/mlv_logo (1).jpg"))); // NOI18N + panelPrintReceipt.add(jLabel5, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 10, 100, 90)); + + jLabel4.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + jLabel4.setText("Receipt No : MLV- "); + panelPrintReceipt.add(jLabel4, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 130, -1, -1)); + + jLabel6.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + jLabel6.setText("Payment Mode : "); + panelPrintReceipt.add(jLabel6, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 160, -1, -1)); + + txtChequeDD.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + txtChequeDD.setText("cheque_dd :"); + panelPrintReceipt.add(txtChequeDD, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 190, -1, -1)); + + txtBankName.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + txtBankName.setText("Bank Name : "); + panelPrintReceipt.add(txtBankName, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 220, -1, -1)); + + jLabel10.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + jLabel10.setText("Received From : "); + panelPrintReceipt.add(jLabel10, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 250, -1, -1)); + + jLabel11.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + jLabel11.setText("The following payment int the college office for the year : "); + panelPrintReceipt.add(jLabel11, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 280, -1, -1)); + + jLabel12.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + jLabel12.setText("Date : "); + panelPrintReceipt.add(jLabel12, new org.netbeans.lib.awtextra.AbsoluteConstraints(610, 130, -1, -1)); + + jLabel13.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + jLabel13.setText("GSTIN : "); + panelPrintReceipt.add(jLabel13, new org.netbeans.lib.awtextra.AbsoluteConstraints(610, 160, -1, -1)); + + jSeparator2.setBackground(new java.awt.Color(0, 0, 0)); + jSeparator2.setForeground(new java.awt.Color(0, 0, 0)); + panelPrintReceipt.add(jSeparator2, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 327, 720, -1)); + + jSeparator3.setForeground(new java.awt.Color(0, 0, 0)); + panelPrintReceipt.add(jSeparator3, new org.netbeans.lib.awtextra.AbsoluteConstraints(10, 350, 720, 10)); + + jLabel14.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + jLabel14.setText("Sr No"); + panelPrintReceipt.add(jLabel14, new org.netbeans.lib.awtextra.AbsoluteConstraints(50, 330, -1, -1)); + + jLabel15.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + jLabel15.setText("Heads"); + panelPrintReceipt.add(jLabel15, new org.netbeans.lib.awtextra.AbsoluteConstraints(250, 330, -1, -1)); + + jLabel16.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + jLabel16.setText("Amounts(Rs)"); + panelPrintReceipt.add(jLabel16, new org.netbeans.lib.awtextra.AbsoluteConstraints(570, 330, -1, -1)); + + lblReceiptNo.setText("jLabel17"); + panelPrintReceipt.add(lblReceiptNo, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 130, 140, -1)); + + lblPaymentMode.setText("jLabel18"); + panelPrintReceipt.add(lblPaymentMode, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 160, 140, -1)); + + lblChequeDD.setText("jLabel20"); + panelPrintReceipt.add(lblChequeDD, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 190, 140, -1)); + + lblBankName.setText("jLabel21"); + panelPrintReceipt.add(lblBankName, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 220, 140, -1)); + + lblReceivedFrom.setText("jLabel22"); + panelPrintReceipt.add(lblReceivedFrom, new org.netbeans.lib.awtextra.AbsoluteConstraints(160, 250, 140, -1)); + + lblYear1.setText("jLabel23"); + panelPrintReceipt.add(lblYear1, new org.netbeans.lib.awtextra.AbsoluteConstraints(350, 280, 50, -1)); + + jLabel24.setText("-"); + panelPrintReceipt.add(jLabel24, new org.netbeans.lib.awtextra.AbsoluteConstraints(400, 280, 10, -1)); + + lblYear2.setText("jLabel25"); + panelPrintReceipt.add(lblYear2, new org.netbeans.lib.awtextra.AbsoluteConstraints(420, 280, 60, -1)); + + lblDate.setText("jLabel26"); + panelPrintReceipt.add(lblDate, new org.netbeans.lib.awtextra.AbsoluteConstraints(660, 130, 110, -1)); + + lblGSTIN.setText("jLabel27"); + panelPrintReceipt.add(lblGSTIN, new org.netbeans.lib.awtextra.AbsoluteConstraints(660, 160, 90, -1)); + + jLabel19.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + jLabel19.setText("1."); + panelPrintReceipt.add(jLabel19, new org.netbeans.lib.awtextra.AbsoluteConstraints(50, 370, -1, -1)); + + lblCourseName.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + lblCourseName.setText(" jLabel28"); + panelPrintReceipt.add(lblCourseName, new org.netbeans.lib.awtextra.AbsoluteConstraints(170, 360, 200, -1)); + + jLabel29.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + jLabel29.setText("CGST 9%"); + panelPrintReceipt.add(jLabel29, new org.netbeans.lib.awtextra.AbsoluteConstraints(240, 390, -1, -1)); + + jLabel30.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + jLabel30.setText("SGST 9%"); + panelPrintReceipt.add(jLabel30, new org.netbeans.lib.awtextra.AbsoluteConstraints(240, 420, -1, -1)); + + lblInitialAmount.setText("jLabel31"); + panelPrintReceipt.add(lblInitialAmount, new org.netbeans.lib.awtextra.AbsoluteConstraints(590, 360, -1, -1)); + + lblCGST.setText("jLabel32"); + panelPrintReceipt.add(lblCGST, new org.netbeans.lib.awtextra.AbsoluteConstraints(590, 390, -1, 20)); + + lblSGST.setText("jLabel33"); + panelPrintReceipt.add(lblSGST, new org.netbeans.lib.awtextra.AbsoluteConstraints(590, 420, -1, -1)); + + jSeparator4.setForeground(new java.awt.Color(0, 0, 0)); + panelPrintReceipt.add(jSeparator4, new org.netbeans.lib.awtextra.AbsoluteConstraints(520, 450, 190, 10)); + + lblTotal.setText("jLabel34"); + panelPrintReceipt.add(lblTotal, new org.netbeans.lib.awtextra.AbsoluteConstraints(590, 460, -1, -1)); + + jLabel7.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + jLabel7.setText("Total In Words : "); + panelPrintReceipt.add(jLabel7, new org.netbeans.lib.awtextra.AbsoluteConstraints(20, 520, -1, -1)); + + lblTotalInWords.setText("jLabel35"); + panelPrintReceipt.add(lblTotalInWords, new org.netbeans.lib.awtextra.AbsoluteConstraints(120, 520, -1, -1)); + + jSeparator5.setForeground(new java.awt.Color(0, 0, 0)); + panelPrintReceipt.add(jSeparator5, new org.netbeans.lib.awtextra.AbsoluteConstraints(520, 550, 200, 10)); + + jLabel36.setFont(new java.awt.Font("Segoe UI", 1, 12)); // NOI18N + jLabel36.setText("Receiver Signature"); + panelPrintReceipt.add(jLabel36, new org.netbeans.lib.awtextra.AbsoluteConstraints(560, 560, -1, -1)); + + jTextField2.setBackground(new java.awt.Color(0, 137, 181)); + panelPrintReceipt.add(jTextField2, new org.netbeans.lib.awtextra.AbsoluteConstraints(0, 110, 810, 10)); + + getContentPane().add(panelPrintReceipt, new org.netbeans.lib.awtextra.AbsoluteConstraints(450, 40, 810, 590)); + + jLabel17.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N + jLabel17.setForeground(new java.awt.Color(0, 137, 181)); + jLabel17.setText("PRINT RECEIPT"); + getContentPane().add(jLabel17, new org.netbeans.lib.awtextra.AbsoluteConstraints(820, 10, 110, 20)); + + jTextField1.setBackground(new java.awt.Color(0, 137, 181)); + jTextField1.setForeground(new java.awt.Color(0, 137, 181)); + getContentPane().add(jTextField1, new org.netbeans.lib.awtextra.AbsoluteConstraints(800, 30, 140, 5)); + + pack(); + setLocationRelativeTo(null); + }// </editor-fold>//GEN-END:initComponents + + private void btnEditMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelEdit.setBackground(clr); + }//GEN-LAST:event_btnEditMouseEntered + + private void btnEditMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelEdit.setBackground(clr); + }//GEN-LAST:event_btnEditMouseExited + + private void btnHomeMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseEntered + Color clr=new Color(255,204,204); + panelHome.setBackground(clr); + }//GEN-LAST:event_btnHomeMouseEntered + + private void btnHomeMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnHomeMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelHome.setBackground(clr); + }//GEN-LAST:event_btnHomeMouseExited + + private void btnSearchRecordsMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelSearchRecords.setBackground(clr); + }//GEN-LAST:event_btnSearchRecordsMouseEntered + + private void btnSearchRecordsMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnSearchRecordsMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelSearchRecords.setBackground(clr); + }//GEN-LAST:event_btnSearchRecordsMouseExited + + private void btnEditCourseMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelEditCourse.setBackground(clr); + }//GEN-LAST:event_btnEditCourseMouseEntered + + private void btnEditCourseMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditCourseMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelEditCourse.setBackground(clr); + }//GEN-LAST:event_btnEditCourseMouseExited + + private void btnCourseListMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelCourseList.setBackground(clr); + }//GEN-LAST:event_btnCourseListMouseEntered + + private void btnCourseListMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnCourseListMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelCourseList.setBackground(clr); + }//GEN-LAST:event_btnCourseListMouseExited + + private void btnViewAllRecordsMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelViewAllRecords.setBackground(clr); + }//GEN-LAST:event_btnViewAllRecordsMouseEntered + + private void btnViewAllRecordsMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnViewAllRecordsMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelViewAllRecords.setBackground(clr); + }//GEN-LAST:event_btnViewAllRecordsMouseExited + + private void btnBackMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelBack.setBackground(clr); + }//GEN-LAST:event_btnBackMouseEntered + + private void btnBackMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnBackMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelBack.setBackground(clr); + }//GEN-LAST:event_btnBackMouseExited + + private void btnLogOutMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseEntered + + Color clr=new Color(255,204,204); + panelLogOut.setBackground(clr); + }//GEN-LAST:event_btnLogOutMouseEntered + + private void btnLogOutMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnLogOutMouseExited + + Color clr=new Color(255,102,102); + panelLogOut.setBackground(clr); + }//GEN-LAST:event_btnLogOutMouseExited + + private void btnPrintMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnPrintMouseEntered + // TODO add your handling code here: + Color clr=new Color(255,204,204); + panelPrint.setBackground(clr); + }//GEN-LAST:event_btnPrintMouseEntered + + private void btnPrintMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnPrintMouseExited + // TODO add your handling code here: + Color clr=new Color(255,102,102); + panelPrint.setBackground(clr); + }//GEN-LAST:event_btnPrintMouseExited + + private void btnPrintMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnPrintMouseClicked + // TODO add your handling code here: + PrinterJob job=PrinterJob.getPrinterJob(); + job.setJobName("Print Data"); + job.setPrintable(new Printable(){ + public int print(Graphics pg,PageFormat pf, int pageNum){ + pf.setOrientation(PageFormat.LANDSCAPE); + if(pageNum>0){ + return Printable.NO_SUCH_PAGE; + } + Graphics2D g2=(Graphics2D)pg; + g2.translate(pf.getImageableX(),pf.getImageableY()); + g2.scale(0.47, 0.47); + panelPrintReceipt.print(g2); + return Printable.PAGE_EXISTS; + } + }); + boolean ok = job.printDialog(); + + if (ok) { + try { + job.print(); + } catch (PrinterException ex) { + ex.printStackTrace(); + } + } + }//GEN-LAST:event_btnPrintMouseClicked + + private void panelLogOutMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_panelLogOutMouseEntered + // TODO add your handling code here: + + }//GEN-LAST:event_panelLogOutMouseEntered + + private void btnEditMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_btnEditMouseClicked + // TODO add your handling code here: + UpdateFeesDetails update=new UpdateFeesDetails(); + update.setVisible(true); + this.dispose(); + }//GEN-LAST:event_btnEditMouseClicked + + /** + * @param args the command line arguments + */ + public static void main(String args[]) { + /* Set the Nimbus look and feel */ + //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "> + /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. + * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html + */ + try { + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { + if ("Nimbus".equals(info.getName())) { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + } + } + } catch (ClassNotFoundException ex) { + java.util.logging.Logger.getLogger(printReceipt.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (InstantiationException ex) { + java.util.logging.Logger.getLogger(printReceipt.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (IllegalAccessException ex) { + java.util.logging.Logger.getLogger(printReceipt.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } catch (javax.swing.UnsupportedLookAndFeelException ex) { + java.util.logging.Logger.getLogger(printReceipt.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + //</editor-fold> + + /* Create and display the form */ + java.awt.EventQueue.invokeLater(new Runnable() { + public void run() { + new printReceipt().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JLabel btnBack; + private javax.swing.JLabel btnCourseList; + private javax.swing.JLabel btnEdit; + private javax.swing.JLabel btnEditCourse; + private javax.swing.JLabel btnHome; + private javax.swing.JLabel btnLogOut; + private javax.swing.JLabel btnPrint; + private javax.swing.JLabel btnSearchRecords; + private javax.swing.JLabel btnViewAllRecords; + private javax.swing.JLabel jLabel1; + private javax.swing.JLabel jLabel10; + private javax.swing.JLabel jLabel11; + private javax.swing.JLabel jLabel12; + private javax.swing.JLabel jLabel13; + private javax.swing.JLabel jLabel14; + private javax.swing.JLabel jLabel15; + private javax.swing.JLabel jLabel16; + private javax.swing.JLabel jLabel17; + private javax.swing.JLabel jLabel19; + private javax.swing.JLabel jLabel2; + private javax.swing.JLabel jLabel24; + private javax.swing.JLabel jLabel29; + private javax.swing.JLabel jLabel3; + private javax.swing.JLabel jLabel30; + private javax.swing.JLabel jLabel36; + private javax.swing.JLabel jLabel4; + private javax.swing.JLabel jLabel5; + private javax.swing.JLabel jLabel6; + private javax.swing.JLabel jLabel7; + private javax.swing.JSeparator jSeparator2; + private javax.swing.JSeparator jSeparator3; + private javax.swing.JSeparator jSeparator4; + private javax.swing.JSeparator jSeparator5; + private javax.swing.JTextField jTextField1; + private javax.swing.JTextField jTextField2; + private javax.swing.JLabel lblBankName; + private javax.swing.JLabel lblCGST; + private javax.swing.JLabel lblChequeDD; + private javax.swing.JLabel lblCourseName; + private javax.swing.JLabel lblDate; + private javax.swing.JLabel lblGSTIN; + private javax.swing.JLabel lblInitialAmount; + private javax.swing.JLabel lblPaymentMode; + private javax.swing.JLabel lblReceiptNo; + private javax.swing.JLabel lblReceivedFrom; + private javax.swing.JLabel lblSGST; + private javax.swing.JLabel lblTotal; + private javax.swing.JLabel lblTotalInWords; + private javax.swing.JLabel lblYear1; + private javax.swing.JLabel lblYear2; + private javax.swing.JPanel panelBack; + private javax.swing.JPanel panelCourseList; + private javax.swing.JPanel panelEdit; + private javax.swing.JPanel panelEditCourse; + private javax.swing.JPanel panelHome; + private javax.swing.JPanel panelLogOut; + private javax.swing.JPanel panelPrint; + private javax.swing.JPanel panelPrintReceipt; + private javax.swing.JPanel panelSearchRecords; + private javax.swing.JPanel panelSideBar; + private javax.swing.JPanel panelViewAllRecords; + private javax.swing.JLabel txtBankName; + private javax.swing.JLabel txtChequeDD; + // End of variables declaration//GEN-END:variables +} From 52ce13882f0ba21067d8d8aa8c8fb0d27406fd0d Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 11:05:06 +0530 Subject: [PATCH 05/20] Create t1 --- nbproject/t1 | 1 + 1 file changed, 1 insertion(+) create mode 100644 nbproject/t1 diff --git a/nbproject/t1 b/nbproject/t1 new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/nbproject/t1 @@ -0,0 +1 @@ + From 58b3d3c29624fe4610d59e9ce6554fb607e171aa Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 11:05:39 +0530 Subject: [PATCH 06/20] Add files via upload --- nbproject/build-impl.xml | 1771 +++++++++++++++++++++++++++++++++ nbproject/genfiles.properties | 8 + nbproject/project.properties | 125 +++ nbproject/project.xml | 15 + 4 files changed, 1919 insertions(+) create mode 100644 nbproject/build-impl.xml create mode 100644 nbproject/genfiles.properties create mode 100644 nbproject/project.properties create mode 100644 nbproject/project.xml diff --git a/nbproject/build-impl.xml b/nbproject/build-impl.xml new file mode 100644 index 0000000..3b5ca2e --- /dev/null +++ b/nbproject/build-impl.xml @@ -0,0 +1,1771 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +*** GENERATED FROM project.xml - DO NOT EDIT *** +*** EDIT ../build.xml INSTEAD *** + +For the purpose of easier reading the script +is divided into following sections: + + - initialization + - compilation + - jar + - execution + - debugging + - javadoc + - test compilation + - test execution + - test debugging + - applet + - cleanup + + --> +<project xmlns:if="ant:if" xmlns:j2seproject1="http://www.netbeans.org/ns/j2se-project/1" xmlns:j2seproject3="http://www.netbeans.org/ns/j2se-project/3" xmlns:jaxrpc="http://www.netbeans.org/ns/j2se-project/jax-rpc" xmlns:unless="ant:unless" basedir=".." default="default" name="Fees_Managment_System-impl"> + <fail message="Please build using Ant 1.8.0 or higher."> + <condition> + <not> + <antversion atleast="1.8.0"/> + </not> + </condition> + </fail> + <target depends="test,jar,javadoc" description="Build and test whole project." name="default"/> + <!-- + ====================== + INITIALIZATION SECTION + ====================== + --> + <target name="-pre-init"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="-pre-init" name="-init-private"> + <property file="nbproject/private/config.properties"/> + <property file="nbproject/private/configs/${config}.properties"/> + <property file="nbproject/private/private.properties"/> + </target> + <target depends="-pre-init,-init-private" name="-init-user"> + <property file="${user.properties.file}"/> + <!-- The two properties below are usually overridden --> + <!-- by the active platform. Just a fallback. --> + <property name="default.javac.source" value="1.8"/> + <property name="default.javac.target" value="1.8"/> + </target> + <target depends="-pre-init,-init-private,-init-user" name="-init-project"> + <property file="nbproject/configs/${config}.properties"/> + <property file="nbproject/project.properties"/> + </target> + <target name="-init-modules-supported"> + <condition property="modules.supported.internal" value="true"> + <not> + <matches pattern="1\.[0-8](\..*)?" string="${javac.source}"/> + </not> + </condition> + </target> + <target depends="-init-modules-supported" if="modules.supported.internal" name="-init-macrodef-modulename"> + <macrodef name="modulename" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute name="property"/> + <attribute name="sourcepath"/> + <sequential> + <loadresource property="@{property}" quiet="true"> + <javaresource classpath="@{sourcepath}" name="module-info.java" parentFirst="false"/> + <filterchain> + <stripjavacomments/> + <linecontainsregexp> + <regexp pattern="module .* \{"/> + </linecontainsregexp> + <tokenfilter> + <linetokenizer/> + <replaceregex flags="s" pattern="(\s*module\s+)(\S*)(\s*\{.*)" replace="\2"/> + </tokenfilter> + <striplinebreaks/> + </filterchain> + </loadresource> + </sequential> + </macrodef> + </target> + <target depends="-init-modules-supported,-init-macrodef-modulename" if="modules.supported.internal" name="-init-source-module-properties"> + <fail message="Java 9 support requires Ant 1.10.0 or higher."> + <condition> + <not> + <antversion atleast="1.10.0"/> + </not> + </condition> + </fail> + <j2seproject3:modulename property="module.name" sourcepath="${src.dir}"/> + <condition property="named.module.internal"> + <and> + <isset property="module.name"/> + <length length="0" string="${module.name}" when="greater"/> + </and> + </condition> + <condition property="unnamed.module.internal"> + <not> + <isset property="named.module.internal"/> + </not> + </condition> + <property name="javac.modulepath" value=""/> + <property name="run.modulepath" value="${javac.modulepath}"/> + <property name="module.build.classes.dir" value="${build.classes.dir}"/> + <property name="debug.modulepath" value="${run.modulepath}"/> + <property name="javac.upgrademodulepath" value=""/> + <property name="run.upgrademodulepath" value="${javac.upgrademodulepath}"/> + <condition else="" property="javac.systemmodulepath.cmd.line.arg" value="--system '${javac.systemmodulepath}'"> + <and> + <isset property="javac.systemmodulepath"/> + <length length="0" string="${javac.systemmodulepath}" when="greater"/> + </and> + </condition> + <property name="dist.jlink.dir" value="${dist.dir}/jlink"/> + <property name="dist.jlink.output" value="${dist.jlink.dir}/${application.title}"/> + <property name="module.name" value=""/> + </target> + <target depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property,-init-modules-supported" name="-do-init"> + <property name="platform.java" value="${java.home}/bin/java"/> + <available file="${manifest.file}" property="manifest.available"/> + <condition property="splashscreen.available"> + <and> + <not> + <equals arg1="${application.splash}" arg2="" trim="true"/> + </not> + <available file="${application.splash}"/> + </and> + </condition> + <condition property="main.class.available"> + <and> + <isset property="main.class"/> + <not> + <equals arg1="${main.class}" arg2="" trim="true"/> + </not> + </and> + </condition> + <condition property="profile.available"> + <and> + <isset property="javac.profile"/> + <length length="0" string="${javac.profile}" when="greater"/> + <not> + <matches pattern="1\.[0-7](\..*)?" string="${javac.source}"/> + </not> + </and> + </condition> + <condition property="do.archive"> + <or> + <not> + <istrue value="${jar.archive.disabled}"/> + </not> + <istrue value="${not.archive.disabled}"/> + </or> + </condition> + <condition property="do.archive+manifest.available"> + <and> + <isset property="manifest.available"/> + <istrue value="${do.archive}"/> + </and> + </condition> + <condition property="do.archive+main.class.available"> + <and> + <isset property="main.class.available"/> + <istrue value="${do.archive}"/> + </and> + </condition> + <condition property="do.archive+splashscreen.available"> + <and> + <isset property="splashscreen.available"/> + <istrue value="${do.archive}"/> + </and> + </condition> + <condition property="do.archive+profile.available"> + <and> + <isset property="profile.available"/> + <istrue value="${do.archive}"/> + </and> + </condition> + <condition property="have.tests"> + <or> + <available file="${test.src.dir}"/> + </or> + </condition> + <condition property="have.sources"> + <or> + <available file="${src.dir}"/> + </or> + </condition> + <condition property="netbeans.home+have.tests"> + <and> + <isset property="netbeans.home"/> + <isset property="have.tests"/> + </and> + </condition> + <condition property="no.javadoc.preview"> + <and> + <isset property="javadoc.preview"/> + <isfalse value="${javadoc.preview}"/> + </and> + </condition> + <property name="run.jvmargs" value=""/> + <property name="run.jvmargs.ide" value=""/> + <property name="javac.compilerargs" value=""/> + <property name="work.dir" value="${basedir}"/> + <condition property="no.deps"> + <and> + <istrue value="${no.dependencies}"/> + </and> + </condition> + <property name="javac.debug" value="true"/> + <property name="javadoc.preview" value="true"/> + <property name="application.args" value=""/> + <property name="source.encoding" value="${file.encoding}"/> + <property name="runtime.encoding" value="${source.encoding}"/> + <property name="manifest.encoding" value="${source.encoding}"/> + <condition property="javadoc.encoding.used" value="${javadoc.encoding}"> + <and> + <isset property="javadoc.encoding"/> + <not> + <equals arg1="${javadoc.encoding}" arg2=""/> + </not> + </and> + </condition> + <property name="javadoc.encoding.used" value="${source.encoding}"/> + <property name="includes" value="**"/> + <property name="excludes" value=""/> + <property name="do.depend" value="false"/> + <condition property="do.depend.true"> + <istrue value="${do.depend}"/> + </condition> + <path id="endorsed.classpath.path" path="${endorsed.classpath}"/> + <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'"> + <and> + <isset property="endorsed.classpath"/> + <not> + <equals arg1="${endorsed.classpath}" arg2="" trim="true"/> + </not> + </and> + </condition> + <condition else="" property="javac.profile.cmd.line.arg" value="-profile ${javac.profile}"> + <isset property="profile.available"/> + </condition> + <condition else="false" property="jdkBug6558476"> + <and> + <matches pattern="1\.[56]" string="${java.specification.version}"/> + <not> + <os family="unix"/> + </not> + </and> + </condition> + <condition else="false" property="javac.fork"> + <or> + <istrue value="${jdkBug6558476}"/> + <istrue value="${javac.external.vm}"/> + </or> + </condition> + <property name="jar.index" value="false"/> + <property name="jar.index.metainf" value="${jar.index}"/> + <property name="copylibs.rebase" value="true"/> + <available file="${meta.inf.dir}/persistence.xml" property="has.persistence.xml"/> + <condition property="junit.available"> + <or> + <available classname="org.junit.Test" classpath="${run.test.classpath}"/> + <available classname="junit.framework.Test" classpath="${run.test.classpath}"/> + </or> + </condition> + <condition property="testng.available"> + <available classname="org.testng.annotations.Test" classpath="${run.test.classpath}"/> + </condition> + <condition property="junit+testng.available"> + <and> + <istrue value="${junit.available}"/> + <istrue value="${testng.available}"/> + </and> + </condition> + <condition else="testng" property="testng.mode" value="mixed"> + <istrue value="${junit+testng.available}"/> + </condition> + <condition else="" property="testng.debug.mode" value="-mixed"> + <istrue value="${junit+testng.available}"/> + </condition> + <property name="java.failonerror" value="true"/> + </target> + <target name="-post-init"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init" name="-init-check"> + <fail unless="src.dir">Must set src.dir</fail> + <fail unless="test.src.dir">Must set test.src.dir</fail> + <fail unless="build.dir">Must set build.dir</fail> + <fail unless="dist.dir">Must set dist.dir</fail> + <fail unless="build.classes.dir">Must set build.classes.dir</fail> + <fail unless="dist.javadoc.dir">Must set dist.javadoc.dir</fail> + <fail unless="build.test.classes.dir">Must set build.test.classes.dir</fail> + <fail unless="build.test.results.dir">Must set build.test.results.dir</fail> + <fail unless="build.classes.excludes">Must set build.classes.excludes</fail> + <fail unless="dist.jar">Must set dist.jar</fail> + </target> + <target name="-init-macrodef-property"> + <macrodef name="property" uri="http://www.netbeans.org/ns/j2se-project/1"> + <attribute name="name"/> + <attribute name="value"/> + <sequential> + <property name="@{name}" value="${@{value}}"/> + </sequential> + </macrodef> + </target> + <target depends="-init-ap-cmdline-properties,-init-source-module-properties" if="modules.supported.internal" name="-init-macrodef-javac-with-module"> + <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${src.dir}" name="srcdir"/> + <attribute default="${build.classes.dir}" name="destdir"/> + <attribute default="${javac.classpath}" name="classpath"/> + <attribute default="${javac.modulepath}" name="modulepath"/> + <attribute default="${javac.upgrademodulepath}" name="upgrademodulepath"/> + <attribute default="${javac.processorpath}" name="processorpath"/> + <attribute default="${javac.processormodulepath}" name="processormodulepath"/> + <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="${javac.debug}" name="debug"/> + <attribute default="${empty.dir}" name="sourcepath" unless:set="named.module.internal"/> + <attribute default="${src.dir}" if:set="named.module.internal" name="sourcepath"/> + <attribute default="${empty.dir}" name="gensrcdir"/> + <element name="customize" optional="true"/> + <sequential> + <condition property="warn.excludes.internal"> + <and> + <isset property="named.module.internal"/> + <length length="0" string="@{excludes}" trim="true" when="greater"/> + </and> + </condition> + <echo if:set="warn.excludes.internal" level="warning" message="The javac excludes are not supported in the JDK 9 Named Module."/> + <property location="${build.dir}/empty" name="empty.dir"/> + <mkdir dir="${empty.dir}"/> + <mkdir dir="@{apgeneratedsrcdir}"/> + <condition property="processormodulepath.set"> + <resourcecount count="0" when="greater"> + <path> + <pathelement path="@{processormodulepath}"/> + </path> + </resourcecount> + </condition> + <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}"> + <src> + <dirset dir="@{gensrcdir}" erroronmissingdir="false"> + <include name="*"/> + </dirset> + </src> + <classpath> + <path path="@{classpath}"/> + </classpath> + <modulepath> + <path path="@{modulepath}"/> + </modulepath> + <upgrademodulepath> + <path path="@{upgrademodulepath}"/> + </upgrademodulepath> + <compilerarg line="${javac.systemmodulepath.cmd.line.arg}"/> + <compilerarg line="${javac.profile.cmd.line.arg}"/> + <compilerarg line="${javac.compilerargs}"/> + <compilerarg if:set="processormodulepath.set" value="--processor-module-path"/> + <compilerarg if:set="processormodulepath.set" path="@{processormodulepath}"/> + <compilerarg unless:set="processormodulepath.set" value="-processorpath"/> + <compilerarg path="@{processorpath}:${empty.dir}" unless:set="processormodulepath.set"/> + <compilerarg line="${ap.processors.internal}"/> + <compilerarg line="${annotation.processing.processor.options}"/> + <compilerarg value="-s"/> + <compilerarg path="@{apgeneratedsrcdir}"/> + <compilerarg line="${ap.proc.none.internal}"/> + <customize/> + </javac> + </sequential> + </macrodef> + </target> + <target depends="-init-ap-cmdline-properties,-init-source-module-properties" if="ap.supported.internal" name="-init-macrodef-javac-with-processors" unless="modules.supported.internal"> + <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${src.dir}" name="srcdir"/> + <attribute default="${build.classes.dir}" name="destdir"/> + <attribute default="${javac.classpath}" name="classpath"/> + <attribute default="${javac.modulepath}" name="modulepath"/> + <attribute default="${javac.upgrademodulepath}" name="upgrademodulepath"/> + <attribute default="${javac.processorpath}" name="processorpath"/> + <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="${javac.debug}" name="debug"/> + <attribute default="${empty.dir}" name="sourcepath"/> + <attribute default="${empty.dir}" name="gensrcdir"/> + <element name="customize" optional="true"/> + <sequential> + <property location="${build.dir}/empty" name="empty.dir"/> + <mkdir dir="${empty.dir}"/> + <mkdir dir="@{apgeneratedsrcdir}"/> + <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}"> + <src> + <dirset dir="@{gensrcdir}" erroronmissingdir="false"> + <include name="*"/> + </dirset> + </src> + <classpath> + <path path="@{classpath}"/> + </classpath> + <compilerarg line="${endorsed.classpath.cmd.line.arg}"/> + <compilerarg line="${javac.profile.cmd.line.arg}"/> + <compilerarg line="${javac.compilerargs}"/> + <compilerarg value="-processorpath"/> + <compilerarg path="@{processorpath}:${empty.dir}"/> + <compilerarg line="${ap.processors.internal}"/> + <compilerarg line="${annotation.processing.processor.options}"/> + <compilerarg value="-s"/> + <compilerarg path="@{apgeneratedsrcdir}"/> + <compilerarg line="${ap.proc.none.internal}"/> + <customize/> + </javac> + </sequential> + </macrodef> + </target> + <target depends="-init-ap-cmdline-properties,-init-source-module-properties" name="-init-macrodef-javac-without-processors" unless="ap.supported.internal"> + <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${src.dir}" name="srcdir"/> + <attribute default="${build.classes.dir}" name="destdir"/> + <attribute default="${javac.classpath}" name="classpath"/> + <attribute default="${javac.modulepath}" name="modulepath"/> + <attribute default="${javac.upgrademodulepath}" name="upgrademodulepath"/> + <attribute default="${javac.processorpath}" name="processorpath"/> + <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="${javac.debug}" name="debug"/> + <attribute default="${empty.dir}" name="sourcepath"/> + <attribute default="${empty.dir}" name="gensrcdir"/> + <element name="customize" optional="true"/> + <sequential> + <property location="${build.dir}/empty" name="empty.dir"/> + <mkdir dir="${empty.dir}"/> + <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}"> + <src> + <dirset dir="@{gensrcdir}" erroronmissingdir="false"> + <include name="*"/> + </dirset> + </src> + <classpath> + <path path="@{classpath}"/> + </classpath> + <compilerarg line="${endorsed.classpath.cmd.line.arg}"/> + <compilerarg line="${javac.profile.cmd.line.arg}"/> + <compilerarg line="${javac.compilerargs}"/> + <customize/> + </javac> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-javac-with-module,-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors" name="-init-macrodef-javac"> + <macrodef name="depend" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${src.dir}" name="srcdir"/> + <attribute default="${build.classes.dir}" name="destdir"/> + <attribute default="${javac.classpath}" name="classpath"/> + <sequential> + <depend cache="${build.dir}/depcache" destdir="@{destdir}" excludes="${excludes}" includes="${includes}" srcdir="@{srcdir}"> + <classpath> + <path path="@{classpath}"/> + </classpath> + </depend> + </sequential> + </macrodef> + <macrodef name="force-recompile" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${build.classes.dir}" name="destdir"/> + <sequential> + <fail unless="javac.includes">Must set javac.includes</fail> + <pathconvert pathsep="${line.separator}" property="javac.includes.binary"> + <path> + <filelist dir="@{destdir}" files="${javac.includes}"/> + </path> + <globmapper from="*.java" to="*.class"/> + </pathconvert> + <tempfile deleteonexit="true" property="javac.includesfile.binary"/> + <echo file="${javac.includesfile.binary}" message="${javac.includes.binary}"/> + <delete> + <files includesfile="${javac.includesfile.binary}"/> + </delete> + <delete> + <fileset file="${javac.includesfile.binary}"/> + </delete> + </sequential> + </macrodef> + </target> + <target if="${junit.available}" name="-init-macrodef-junit-init"> + <condition else="false" property="nb.junit.batch" value="true"> + <and> + <istrue value="${junit.available}"/> + <not> + <isset property="test.method"/> + </not> + </and> + </condition> + <condition else="false" property="nb.junit.single" value="true"> + <and> + <istrue value="${junit.available}"/> + <isset property="test.method"/> + </and> + </condition> + </target> + <target name="-init-test-properties"> + <property name="test.binaryincludes" value="<nothing>"/> + <property name="test.binarytestincludes" value=""/> + <property name="test.binaryexcludes" value=""/> + </target> + <target depends="-init-modules-supported" if="modules.supported.internal" name="-init-macrodef-junit-prototype-with-module"> + <macrodef name="junit-prototype" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <element name="customizePrototype" optional="true"/> + <sequential> + <property name="junit.forkmode" value="perTest"/> + <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}"> + <syspropertyset> + <propertyref prefix="test-sys-prop."/> + <mapper from="test-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <classpath> + <path path="${run.test.classpath}"/> + </classpath> + <modulepath> + <path path="${run.test.modulepath}"/> + </modulepath> + <formatter type="brief" usefile="false"/> + <formatter type="xml"/> + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> + <jvmarg value="-ea"/> + <jvmarg line="${run.test.jvmargs}"/> + <customizePrototype/> + </junit> + </sequential> + </macrodef> + </target> + <target depends="-init-modules-supported" name="-init-macrodef-junit-prototype-without-module" unless="modules.supported.internal"> + <macrodef name="junit-prototype" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <element name="customizePrototype" optional="true"/> + <sequential> + <property name="junit.forkmode" value="perTest"/> + <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}"> + <syspropertyset> + <propertyref prefix="test-sys-prop."/> + <mapper from="test-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <classpath> + <path path="${run.test.classpath}"/> + </classpath> + <formatter type="brief" usefile="false"/> + <formatter type="xml"/> + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> + <jvmarg value="-ea"/> + <customizePrototype/> + </junit> + </sequential> + </macrodef> + </target> + <target depends="-init-test-properties,-init-macrodef-junit-prototype-with-module,-init-macrodef-junit-prototype-without-module" if="${nb.junit.single}" name="-init-macrodef-junit-single" unless="${nb.junit.batch}"> + <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element name="customize" optional="true"/> + <sequential> + <j2seproject3:junit-prototype> + <customizePrototype> + <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/> + <customize/> + </customizePrototype> + </j2seproject3:junit-prototype> + </sequential> + </macrodef> + </target> + <target depends="-init-test-properties,-init-macrodef-junit-prototype-with-module,-init-macrodef-junit-prototype-without-module" if="${nb.junit.batch}" name="-init-macrodef-junit-batch" unless="${nb.junit.single}"> + <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element name="customize" optional="true"/> + <sequential> + <j2seproject3:junit-prototype> + <customizePrototype> + <batchtest todir="${build.test.results.dir}"> + <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}"> + <filename name="@{testincludes}"/> + </fileset> + <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}"> + <filename name="${test.binarytestincludes}"/> + </fileset> + </batchtest> + <customize/> + </customizePrototype> + </j2seproject3:junit-prototype> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-junit-init,-init-macrodef-junit-single, -init-macrodef-junit-batch" if="${junit.available}" name="-init-macrodef-junit"/> + <target if="${testng.available}" name="-init-macrodef-testng"> + <macrodef name="testng" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element name="customize" optional="true"/> + <sequential> + <condition else="" property="testng.methods.arg" value="@{testincludes}.@{testmethods}"> + <isset property="test.method"/> + </condition> + <union id="test.set"> + <fileset dir="${test.src.dir}" excludes="@{excludes},**/*.xml,${excludes}" includes="@{includes}"> + <filename name="@{testincludes}"/> + </fileset> + </union> + <taskdef classname="org.testng.TestNGAntTask" classpath="${run.test.classpath}" name="testng"/> + <testng classfilesetref="test.set" failureProperty="tests.failed" listeners="org.testng.reporters.VerboseReporter" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="Fees_Managment_System" testname="TestNG tests" workingDir="${work.dir}"> + <xmlfileset dir="${build.test.classes.dir}" includes="@{testincludes}"/> + <propertyset> + <propertyref prefix="test-sys-prop."/> + <mapper from="test-sys-prop.*" to="*" type="glob"/> + </propertyset> + <classpath> + <path path="${run.test.classpath}"/> + </classpath> + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> + <customize/> + </testng> + </sequential> + </macrodef> + </target> + <target name="-init-macrodef-test-impl"> + <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element implicit="true" name="customize" optional="true"/> + <sequential> + <echo>No tests executed.</echo> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-junit" if="${junit.available}" name="-init-macrodef-junit-impl"> + <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element implicit="true" name="customize" optional="true"/> + <sequential> + <j2seproject3:junit excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}"> + <customize/> + </j2seproject3:junit> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-testng" if="${testng.available}" name="-init-macrodef-testng-impl"> + <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element implicit="true" name="customize" optional="true"/> + <sequential> + <j2seproject3:testng excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}"> + <customize/> + </j2seproject3:testng> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-test-impl,-init-macrodef-junit-impl,-init-macrodef-testng-impl" name="-init-macrodef-test"> + <macrodef name="test" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <sequential> + <j2seproject3:test-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}"> + <customize> + <jvmarg line="${run.jvmargs}"/> + <jvmarg line="${run.jvmargs.ide}"/> + </customize> + </j2seproject3:test-impl> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-junit" if="${junit.available}" name="-init-macrodef-junit-debug-impl"> + <macrodef name="test-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element name="customizeDebuggee" optional="true"/> + <sequential> + <j2seproject3:junit excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}"> + <customize> + <jvmarg value="-agentlib:jdwp=transport=${debug-transport},address=${jpda.address}"/> + <customizeDebuggee/> + </customize> + </j2seproject3:junit> + </sequential> + </macrodef> + </target> + <target if="${testng.available}" name="-init-macrodef-testng-debug"> + <macrodef name="testng-debug" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${main.class}" name="testClass"/> + <attribute default="" name="testMethod"/> + <element name="customize2" optional="true"/> + <sequential> + <condition else="-testclass @{testClass}" property="test.class.or.method" value="-methods @{testClass}.@{testMethod}"> + <isset property="test.method"/> + </condition> + <condition else="-suitename Fees_Managment_System -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}"> + <matches pattern=".*\.xml" string="@{testClass}"/> + </condition> + <delete dir="${build.test.results.dir}" quiet="true"/> + <mkdir dir="${build.test.results.dir}"/> + <j2seproject3:debug classname="org.testng.TestNG" classpath="${debug.test.classpath}"> + <customizeDebuggee> + <customize2/> + <jvmarg value="-ea"/> + <arg line="${testng.debug.mode}"/> + <arg line="-d ${build.test.results.dir}"/> + <arg line="-listener org.testng.reporters.VerboseReporter"/> + <arg line="${testng.cmd.args}"/> + </customizeDebuggee> + </j2seproject3:debug> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-testng-debug" if="${testng.available}" name="-init-macrodef-testng-debug-impl"> + <macrodef name="testng-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${main.class}" name="testClass"/> + <attribute default="" name="testMethod"/> + <element implicit="true" name="customize2" optional="true"/> + <sequential> + <j2seproject3:testng-debug testClass="@{testClass}" testMethod="@{testMethod}"> + <customize2/> + </j2seproject3:testng-debug> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-junit-debug-impl" if="${junit.available}" name="-init-macrodef-test-debug-junit"> + <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <attribute default="${main.class}" name="testClass"/> + <attribute default="" name="testMethod"/> + <sequential> + <j2seproject3:test-debug-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}"> + <customizeDebuggee> + <jvmarg line="${run.jvmargs}"/> + <jvmarg line="${run.jvmargs.ide}"/> + </customizeDebuggee> + </j2seproject3:test-debug-impl> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-testng-debug-impl" if="${testng.available}" name="-init-macrodef-test-debug-testng"> + <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <attribute default="${main.class}" name="testClass"/> + <attribute default="" name="testMethod"/> + <sequential> + <j2seproject3:testng-debug-impl testClass="@{testClass}" testMethod="@{testMethod}"> + <customize2> + <syspropertyset> + <propertyref prefix="test-sys-prop."/> + <mapper from="test-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + </customize2> + </j2seproject3:testng-debug-impl> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-test-debug-junit,-init-macrodef-test-debug-testng" name="-init-macrodef-test-debug"/> + <!-- + pre NB7.2 profiling section; consider it deprecated + --> + <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile, -profile-init-check" if="profiler.info.jvmargs.agent" name="profile-init"/> + <target if="profiler.info.jvmargs.agent" name="-profile-pre-init"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target if="profiler.info.jvmargs.agent" name="-profile-post-init"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target if="profiler.info.jvmargs.agent" name="-profile-init-macrodef-profile"> + <macrodef name="resolve"> + <attribute name="name"/> + <attribute name="value"/> + <sequential> + <property name="@{name}" value="${env.@{value}}"/> + </sequential> + </macrodef> + <macrodef name="profile"> + <attribute default="${main.class}" name="classname"/> + <element name="customize" optional="true"/> + <sequential> + <property environment="env"/> + <resolve name="profiler.current.path" value="${profiler.info.pathvar}"/> + <java classname="@{classname}" dir="${profiler.info.dir}" failonerror="${java.failonerror}" fork="true" jvm="${profiler.info.jvm}"> + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> + <jvmarg value="${profiler.info.jvmargs.agent}"/> + <jvmarg line="${profiler.info.jvmargs}"/> + <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/> + <arg line="${application.args}"/> + <classpath> + <path path="${run.classpath}"/> + </classpath> + <syspropertyset> + <propertyref prefix="run-sys-prop."/> + <mapper from="run-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <customize/> + </java> + </sequential> + </macrodef> + </target> + <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile" if="profiler.info.jvmargs.agent" name="-profile-init-check"> + <fail unless="profiler.info.jvm">Must set JVM to use for profiling in profiler.info.jvm</fail> + <fail unless="profiler.info.jvmargs.agent">Must set profiler agent JVM arguments in profiler.info.jvmargs.agent</fail> + </target> + <!-- + end of pre NB7.2 profiling section + --> + <target depends="-init-debug-args" name="-init-macrodef-nbjpda"> + <macrodef name="nbjpdastart" uri="http://www.netbeans.org/ns/j2se-project/1"> + <attribute default="${main.class}" name="name"/> + <attribute default="${debug.modulepath}" name="modulepath"/> + <attribute default="${debug.classpath}" name="classpath"/> + <attribute default="" name="stopclassname"/> + <sequential> + <nbjpdastart addressproperty="jpda.address" name="@{name}" stopclassname="@{stopclassname}" transport="${debug-transport}"> + <modulepath> + <path path="@{modulepath}"/> + </modulepath> + <classpath> + <path path="@{classpath}"/> + </classpath> + </nbjpdastart> + </sequential> + </macrodef> + <macrodef name="nbjpdareload" uri="http://www.netbeans.org/ns/j2se-project/1"> + <attribute default="${build.classes.dir}" name="dir"/> + <sequential> + <nbjpdareload> + <fileset dir="@{dir}" includes="${fix.classes}"> + <include name="${fix.includes}*.class"/> + </fileset> + </nbjpdareload> + </sequential> + </macrodef> + </target> + <target name="-init-debug-args"> + <condition else="dt_socket" property="debug-transport-by-os" value="dt_shmem"> + <os family="windows"/> + </condition> + <condition else="${debug-transport-by-os}" property="debug-transport" value="${debug.transport}"> + <isset property="debug.transport"/> + </condition> + </target> + <target depends="-init-debug-args" name="-init-macrodef-debug"> + <macrodef name="debug" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${module.name}" name="modulename"/> + <attribute default="${main.class}" name="classname"/> + <attribute default="${debug.modulepath}" name="modulepath"/> + <attribute default="${debug.classpath}" name="classpath"/> + <element name="customizeDebuggee" optional="true"/> + <sequential> + <j2seproject1:java classname="@{classname}" classpath="@{classpath}" modulename="@{modulename}" modulepath="@{modulepath}"> + <customize> + <jvmarg value="-agentlib:jdwp=transport=${debug-transport},address=${jpda.address}"/> + <customizeDebuggee/> + </customize> + </j2seproject1:java> + </sequential> + </macrodef> + </target> + <target depends="-init-source-module-properties" if="named.module.internal" name="-init-macrodef-java-with-module"> + <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1"> + <attribute default="${module.name}" name="modulename"/> + <attribute default="${main.class}" name="classname"/> + <attribute default="${run.modulepath}" name="modulepath"/> + <attribute default="${run.upgrademodulepath}" name="upgrademodulepath"/> + <attribute default="${run.classpath}" name="classpath"/> + <attribute default="jvm" name="jvm"/> + <element name="customize" optional="true"/> + <sequential> + <java classname="@{classname}" dir="${work.dir}" failonerror="${java.failonerror}" fork="true" module="@{modulename}"> + <classpath> + <path path="@{classpath}"/> + </classpath> + <modulepath> + <pathelement path="@{modulepath}"/> + <pathelement location="${module.build.classes.dir}"/> + </modulepath> + <upgrademodulepath> + <path path="@{upgrademodulepath}"/> + </upgrademodulepath> + <jvmarg value="-Dfile.encoding=${runtime.encoding}"/> + <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/> + <jvmarg line="${run.jvmargs}"/> + <jvmarg line="${run.jvmargs.ide}"/> + <syspropertyset> + <propertyref prefix="run-sys-prop."/> + <mapper from="run-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <customize/> + </java> + </sequential> + </macrodef> + </target> + <target depends="-init-source-module-properties" if="unnamed.module.internal" name="-init-macrodef-java-with-unnamed-module"> + <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1"> + <attribute default="" name="modulename"/> + <attribute default="${main.class}" name="classname"/> + <attribute default="${run.modulepath}" name="modulepath"/> + <attribute default="${run.upgrademodulepath}" name="upgrademodulepath"/> + <attribute default="${run.classpath}" name="classpath"/> + <attribute default="jvm" name="jvm"/> + <element name="customize" optional="true"/> + <sequential> + <java classname="@{classname}" dir="${work.dir}" failonerror="${java.failonerror}" fork="true"> + <classpath> + <path path="@{classpath}"/> + </classpath> + <modulepath> + <path path="@{modulepath}"/> + </modulepath> + <upgrademodulepath> + <path path="@{upgrademodulepath}"/> + </upgrademodulepath> + <jvmarg value="-Dfile.encoding=${runtime.encoding}"/> + <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/> + <jvmarg line="${run.jvmargs}"/> + <jvmarg line="${run.jvmargs.ide}"/> + <syspropertyset> + <propertyref prefix="run-sys-prop."/> + <mapper from="run-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <customize/> + </java> + </sequential> + </macrodef> + </target> + <target depends="-init-source-module-properties" name="-init-macrodef-java-without-module" unless="modules.supported.internal"> + <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1"> + <attribute default="" name="modulename"/> + <attribute default="${main.class}" name="classname"/> + <attribute default="" name="modulepath"/> + <attribute default="${run.classpath}" name="classpath"/> + <attribute default="jvm" name="jvm"/> + <element name="customize" optional="true"/> + <sequential> + <java classname="@{classname}" dir="${work.dir}" failonerror="${java.failonerror}" fork="true"> + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> + <jvmarg value="-Dfile.encoding=${runtime.encoding}"/> + <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/> + <jvmarg line="${run.jvmargs}"/> + <jvmarg line="${run.jvmargs.ide}"/> + <classpath> + <path path="@{classpath}"/> + </classpath> + <syspropertyset> + <propertyref prefix="run-sys-prop."/> + <mapper from="run-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <customize/> + </java> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-java-with-module, -init-macrodef-java-with-unnamed-module, -init-macrodef-java-without-module" name="-init-macrodef-java"/> + <target name="-init-macrodef-copylibs"> + <macrodef name="copylibs" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${manifest.file}" name="manifest"/> + <element name="customize" optional="true"/> + <sequential> + <property location="${build.classes.dir}" name="build.classes.dir.resolved"/> + <pathconvert property="run.classpath.without.build.classes.dir"> + <path path="${run.classpath}"/> + <map from="${build.classes.dir.resolved}" to=""/> + </pathconvert> + <pathconvert pathsep=" " property="jar.classpath"> + <path path="${run.classpath.without.build.classes.dir}"/> + <chainedmapper> + <flattenmapper/> + <filtermapper> + <replacestring from=" " to="%20"/> + </filtermapper> + <globmapper from="*" to="lib/*"/> + </chainedmapper> + </pathconvert> + <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/> + <copylibs compress="${jar.compress}" excludeFromCopy="${copylibs.excludes}" index="${jar.index}" indexMetaInf="${jar.index.metainf}" jarfile="${dist.jar}" manifest="@{manifest}" manifestencoding="UTF-8" rebase="${copylibs.rebase}" runtimeclasspath="${run.classpath.without.build.classes.dir}"> + <fileset dir="${build.classes.dir}" excludes="${dist.archive.excludes}"/> + <manifest> + <attribute name="Class-Path" value="${jar.classpath}"/> + <customize/> + </manifest> + </copylibs> + </sequential> + </macrodef> + </target> + <target name="-init-presetdef-jar"> + <presetdef name="jar" uri="http://www.netbeans.org/ns/j2se-project/1"> + <jar compress="${jar.compress}" index="${jar.index}" jarfile="${dist.jar}" manifestencoding="UTF-8"> + <j2seproject1:fileset dir="${build.classes.dir}" excludes="${dist.archive.excludes}"/> + </jar> + </presetdef> + </target> + <target name="-init-ap-cmdline-properties"> + <property name="annotation.processing.enabled" value="true"/> + <property name="annotation.processing.processors.list" value=""/> + <property name="annotation.processing.processor.options" value=""/> + <property name="annotation.processing.run.all.processors" value="true"/> + <property name="javac.processorpath" value="${javac.classpath}"/> + <property name="javac.test.processorpath" value="${javac.test.classpath}"/> + <condition property="ap.supported.internal" value="true"> + <not> + <matches pattern="1\.[0-5](\..*)?" string="${javac.source}"/> + </not> + </condition> + </target> + <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-ap-cmdline-supported"> + <condition else="" property="ap.processors.internal" value="-processor ${annotation.processing.processors.list}"> + <isfalse value="${annotation.processing.run.all.processors}"/> + </condition> + <condition else="" property="ap.proc.none.internal" value="-proc:none"> + <isfalse value="${annotation.processing.enabled}"/> + </condition> + </target> + <target depends="-init-ap-cmdline-properties,-init-ap-cmdline-supported" name="-init-ap-cmdline"> + <property name="ap.cmd.line.internal" value=""/> + </target> + <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init,-post-init,-init-check,-init-macrodef-property,-init-macrodef-javac,-init-macrodef-test,-init-macrodef-test-debug,-init-macrodef-nbjpda,-init-macrodef-debug,-init-macrodef-java,-init-presetdef-jar,-init-ap-cmdline" name="init"/> + <!-- + =================== + COMPILATION SECTION + =================== + --> + <target name="-deps-jar-init" unless="built-jar.properties"> + <property location="${build.dir}/built-jar.properties" name="built-jar.properties"/> + <delete file="${built-jar.properties}" quiet="true"/> + </target> + <target if="already.built.jar.${basedir}" name="-warn-already-built-jar"> + <echo level="warn" message="Cycle detected: Fees_Managment_System was already built"/> + </target> + <target depends="init,-deps-jar-init" name="deps-jar" unless="no.deps"> + <mkdir dir="${build.dir}"/> + <touch file="${built-jar.properties}" verbose="false"/> + <property file="${built-jar.properties}" prefix="already.built.jar."/> + <antcall target="-warn-already-built-jar"/> + <propertyfile file="${built-jar.properties}"> + <entry key="${basedir}" value=""/> + </propertyfile> + </target> + <target depends="init,-check-automatic-build,-clean-after-automatic-build" name="-verify-automatic-build"/> + <target depends="init" name="-check-automatic-build"> + <available file="${build.classes.dir}/.netbeans_automatic_build" property="netbeans.automatic.build"/> + </target> + <target depends="init" if="netbeans.automatic.build" name="-clean-after-automatic-build"> + <antcall target="clean"> + <param name="no.dependencies" value="true"/> + </antcall> + </target> + <target depends="init,deps-jar" name="-pre-pre-compile"> + <mkdir dir="${build.classes.dir}"/> + </target> + <target name="-pre-compile"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target if="do.depend.true" name="-compile-depend"> + <pathconvert property="build.generated.subdirs"> + <dirset dir="${build.generated.sources.dir}" erroronmissingdir="false"> + <include name="*"/> + </dirset> + </pathconvert> + <j2seproject3:depend srcdir="${src.dir}:${build.generated.subdirs}"/> + </target> + <target depends="init,deps-jar,-pre-pre-compile,-pre-compile, -copy-persistence-xml,-compile-depend" if="have.sources" name="-do-compile"> + <j2seproject3:javac gensrcdir="${build.generated.sources.dir}"/> + <copy todir="${build.classes.dir}"> + <fileset dir="${src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/> + </copy> + </target> + <target if="has.persistence.xml" name="-copy-persistence-xml"> + <mkdir dir="${build.classes.dir}/META-INF"/> + <copy todir="${build.classes.dir}/META-INF"> + <fileset dir="${meta.inf.dir}" includes="persistence.xml orm.xml"/> + </copy> + </target> + <target name="-post-compile"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile,-do-compile,-post-compile" description="Compile project." name="compile"/> + <target name="-pre-compile-single"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single"> + <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail> + <j2seproject3:force-recompile/> + <j2seproject3:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}, module-info.java" sourcepath="${src.dir}"/> + </target> + <target name="-post-compile-single"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile-single,-do-compile-single,-post-compile-single" name="compile-single"/> + <!-- + ==================== + JAR BUILDING SECTION + ==================== + --> + <target depends="init" name="-pre-pre-jar"> + <dirname file="${dist.jar}" property="dist.jar.dir"/> + <mkdir dir="${dist.jar.dir}"/> + </target> + <target name="-pre-jar"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,compile" name="-check-module-main-class"> + <pathconvert property="main.class.file"> + <string value="${main.class}"/> + <unpackagemapper from="*" to="*.class"/> + </pathconvert> + <condition property="do.module.main.class"> + <and> + <isset property="main.class.available"/> + <available file="${build.classes.dir}/module-info.class"/> + <available file="${build.classes.dir}/${main.class.file}"/> + <isset property="libs.CopyLibs.classpath"/> + <available classname="org.netbeans.modules.java.j2seproject.moduletask.ModuleMainClass" classpath="${libs.CopyLibs.classpath}"/> + </and> + </condition> + </target> + <target depends="-check-module-main-class" if="do.module.main.class" name="-set-module-main-class"> + <taskdef classname="org.netbeans.modules.java.j2seproject.moduletask.ModuleMainClass" classpath="${libs.CopyLibs.classpath}" name="modulemainclass"/> + <modulemainclass failonerror="false" mainclass="${main.class}" moduleinfo="${build.classes.dir}/module-info.class"/> + </target> + <target depends="init" if="do.archive" name="-do-jar-create-manifest" unless="manifest.available"> + <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/> + <touch file="${tmp.manifest.file}" verbose="false"/> + </target> + <target depends="init" if="do.archive+manifest.available" name="-do-jar-copy-manifest"> + <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/> + <copy encoding="${manifest.encoding}" file="${manifest.file}" outputencoding="UTF-8" tofile="${tmp.manifest.file}"/> + </target> + <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+main.class.available" name="-do-jar-set-mainclass"> + <manifest encoding="UTF-8" file="${tmp.manifest.file}" mode="update"> + <attribute name="Main-Class" value="${main.class}"/> + </manifest> + </target> + <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+profile.available" name="-do-jar-set-profile"> + <manifest encoding="UTF-8" file="${tmp.manifest.file}" mode="update"> + <attribute name="Profile" value="${javac.profile}"/> + </manifest> + </target> + <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+splashscreen.available" name="-do-jar-set-splashscreen"> + <basename file="${application.splash}" property="splashscreen.basename"/> + <mkdir dir="${build.classes.dir}/META-INF"/> + <copy failonerror="false" file="${application.splash}" todir="${build.classes.dir}/META-INF"/> + <manifest encoding="UTF-8" file="${tmp.manifest.file}" mode="update"> + <attribute name="SplashScreen-Image" value="META-INF/${splashscreen.basename}"/> + </manifest> + </target> + <target depends="init,compile" name="-check-do-mkdist"> + <condition property="do.mkdist"> + <and> + <isset property="do.archive"/> + <isset property="libs.CopyLibs.classpath"/> + <not> + <istrue value="${mkdist.disabled}"/> + </not> + <not> + <available file="${build.classes.dir}/module-info.class"/> + </not> + </and> + </condition> + </target> + <target depends="init,-init-macrodef-copylibs,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-check-do-mkdist" if="do.mkdist" name="-do-jar-copylibs"> + <j2seproject3:copylibs manifest="${tmp.manifest.file}"/> + <echo level="info">To run this application from the command line without Ant, try:</echo> + <property location="${dist.jar}" name="dist.jar.resolved"/> + <echo level="info">java -jar "${dist.jar.resolved}"</echo> + </target> + <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-check-do-mkdist" if="do.archive" name="-do-jar-jar" unless="do.mkdist"> + <j2seproject1:jar manifest="${tmp.manifest.file}"/> + <property location="${build.classes.dir}" name="build.classes.dir.resolved"/> + <property location="${dist.jar}" name="dist.jar.resolved"/> + <condition else="${dist.jar.resolved}" property="jar.usage.message.class.path.replacement" value=""> + <isset property="named.module.internal"/> + </condition> + <pathconvert property="run.classpath.with.dist.jar"> + <path path="${run.classpath}"/> + <map from="${build.classes.dir.resolved}" to="${jar.usage.message.class.path.replacement}"/> + </pathconvert> + <pathconvert property="run.modulepath.with.dist.jar"> + <path location="${dist.jar.resolved}"/> + <path path="${run.modulepath}"/> + <map from="${build.classes.dir.resolved}" to="${dist.jar.resolved}"/> + </pathconvert> + <condition else="${run.modulepath}" property="jar.usage.message.run.modulepath.with.dist.jar" value="${run.modulepath.with.dist.jar}"> + <isset property="named.module.internal"/> + </condition> + <condition else="" property="jar.usage.message.module.path" value=" -p ${jar.usage.message.run.modulepath.with.dist.jar}"> + <and> + <isset property="modules.supported.internal"/> + <length length="0" string="${jar.usage.message.run.modulepath.with.dist.jar}" when="greater"/> + </and> + </condition> + <condition else="" property="jar.usage.message.class.path" value=" -cp ${run.classpath.with.dist.jar}"> + <length length="0" string="${run.classpath.with.dist.jar}" when="greater"/> + </condition> + <condition else="/${main.class}" property="jar.usage.message.main.class.class.selector" value=""> + <isset property="do.module.main.class"/> + </condition> + <condition else=" ${main.class}" property="jar.usage.message.main.class" value=" -m ${module.name}${jar.usage.message.main.class.class.selector}"> + <isset property="named.module.internal"/> + </condition> + <condition else="" property="jar.usage.message" value="To run this application from the command line without Ant, try:${line.separator}${platform.java}${jar.usage.message.module.path}${jar.usage.message.class.path}${jar.usage.message.main.class}"> + <isset property="main.class.available"/> + </condition> + <condition else="debug" property="jar.usage.level" value="info"> + <isset property="main.class.available"/> + </condition> + <echo level="${jar.usage.level}" message="${jar.usage.message}"/> + </target> + <target depends="-do-jar-copylibs" if="do.archive" name="-do-jar-delete-manifest"> + <delete> + <fileset file="${tmp.manifest.file}"/> + </delete> + </target> + <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-do-jar-jar,-do-jar-delete-manifest" name="-do-jar-without-libraries"/> + <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-do-jar-copylibs,-do-jar-delete-manifest" name="-do-jar-with-libraries"/> + <target name="-post-jar"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,compile,-pre-jar,-set-module-main-class,-do-jar-without-libraries,-do-jar-with-libraries,-post-jar" name="-do-jar"/> + <target depends="init,compile,-pre-jar,-do-jar,-post-jar,deploy" description="Build JAR." name="jar"/> + <!-- + ================= + DEPLOY SECTION + ================= + --> + <target name="-pre-deploy"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init" name="-check-jlink"> + <condition property="do.jlink.internal"> + <and> + <istrue value="${do.jlink}"/> + <isset property="do.archive"/> + <isset property="named.module.internal"/> + </and> + </condition> + </target> + <target depends="init,-do-jar,-post-jar,-pre-deploy,-check-jlink" if="do.jlink.internal" name="-do-deploy"> + <delete dir="${dist.jlink.dir}" failonerror="false" quiet="true"/> + <property name="jlink.launcher.name" value="${application.title}"/> + <condition else="${module.name}" property="jlink.add.modules" value="${module.name},${jlink.additionalmodules}"> + <and> + <isset property="jlink.additionalmodules"/> + <length length="0" string="${jlink.additionalmodules}" when="greater"/> + </and> + </condition> + <condition property="jlink.do.strip.internal"> + <and> + <isset property="jlink.strip"/> + <istrue value="${jlink.strip}"/> + </and> + </condition> + <condition property="jlink.do.additionalparam.internal"> + <and> + <isset property="jlink.additionalparam"/> + <length length="0" string="${jlink.additionalparam}" when="greater"/> + </and> + </condition> + <condition property="jlink.do.launcher.internal"> + <and> + <istrue value="${jlink.launcher}"/> + <isset property="main.class.available"/> + </and> + </condition> + <property name="platform.jlink" value="${jdk.home}/bin/jlink"/> + <property name="jlink.systemmodules.internal" value="${jdk.home}/jmods"/> + <exec executable="${platform.jlink}"> + <arg value="--module-path"/> + <arg path="${jlink.systemmodules.internal}:${run.modulepath}:${dist.jar}"/> + <arg value="--add-modules"/> + <arg value="${jlink.add.modules}"/> + <arg if:set="jlink.do.strip.internal" value="--strip-debug"/> + <arg if:set="jlink.do.launcher.internal" value="--launcher"/> + <arg if:set="jlink.do.launcher.internal" value="${jlink.launcher.name}=${module.name}/${main.class}"/> + <arg if:set="jlink.do.additionalparam.internal" line="${jlink.additionalparam}"/> + <arg value="--output"/> + <arg value="${dist.jlink.output}"/> + </exec> + </target> + <target name="-post-deploy"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="-do-jar,-post-jar,-pre-deploy,-do-deploy,-post-deploy" name="deploy"/> + <!-- + ================= + EXECUTION SECTION + ================= + --> + <target depends="init,compile" description="Run a main class." name="run"> + <j2seproject1:java> + <customize> + <arg line="${application.args}"/> + </customize> + </j2seproject1:java> + </target> + <target name="-do-not-recompile"> + <property name="javac.includes.binary" value=""/> + </target> + <target depends="init,compile-single" name="run-single"> + <fail unless="run.class">Must select one file in the IDE or set run.class</fail> + <j2seproject1:java classname="${run.class}"/> + </target> + <target depends="init,compile-test-single" name="run-test-with-main"> + <fail unless="run.class">Must select one file in the IDE or set run.class</fail> + <j2seproject1:java classname="${run.class}" classpath="${run.test.classpath}"/> + </target> + <!-- + ================= + DEBUGGING SECTION + ================= + --> + <target depends="init" if="netbeans.home" name="-debug-start-debugger"> + <j2seproject1:nbjpdastart name="${debug.class}"/> + </target> + <target depends="init" if="netbeans.home" name="-debug-start-debugger-main-test"> + <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${debug.class}"/> + </target> + <target depends="init,compile" name="-debug-start-debuggee"> + <j2seproject3:debug> + <customizeDebuggee> + <arg line="${application.args}"/> + </customizeDebuggee> + </j2seproject3:debug> + </target> + <target depends="init,compile,-debug-start-debugger,-debug-start-debuggee" description="Debug project in IDE." if="netbeans.home" name="debug"/> + <target depends="init" if="netbeans.home" name="-debug-start-debugger-stepinto"> + <j2seproject1:nbjpdastart stopclassname="${main.class}"/> + </target> + <target depends="init,compile,-debug-start-debugger-stepinto,-debug-start-debuggee" if="netbeans.home" name="debug-stepinto"/> + <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-single"> + <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail> + <j2seproject3:debug classname="${debug.class}"/> + </target> + <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-single" if="netbeans.home" name="debug-single"/> + <target depends="init,compile-test-single" if="netbeans.home" name="-debug-start-debuggee-main-test"> + <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail> + <j2seproject3:debug classname="${debug.class}" classpath="${debug.test.classpath}"/> + </target> + <target depends="init,compile-test-single,-debug-start-debugger-main-test,-debug-start-debuggee-main-test" if="netbeans.home" name="debug-test-with-main"/> + <target depends="init" name="-pre-debug-fix"> + <fail unless="fix.includes">Must set fix.includes</fail> + <property name="javac.includes" value="${fix.includes}.java"/> + </target> + <target depends="init,-pre-debug-fix,compile-single" if="netbeans.home" name="-do-debug-fix"> + <j2seproject1:nbjpdareload/> + </target> + <target depends="init,-pre-debug-fix,-do-debug-fix" if="netbeans.home" name="debug-fix"/> + <!-- + ================= + PROFILING SECTION + ================= + --> + <!-- + pre NB7.2 profiler integration + --> + <target depends="profile-init,compile" description="Profile a project in the IDE." if="profiler.info.jvmargs.agent" name="-profile-pre72"> + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail> + <nbprofiledirect> + <classpath> + <path path="${run.classpath}"/> + </classpath> + </nbprofiledirect> + <profile/> + </target> + <target depends="profile-init,compile-single" description="Profile a selected class in the IDE." if="profiler.info.jvmargs.agent" name="-profile-single-pre72"> + <fail unless="profile.class">Must select one file in the IDE or set profile.class</fail> + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail> + <nbprofiledirect> + <classpath> + <path path="${run.classpath}"/> + </classpath> + </nbprofiledirect> + <profile classname="${profile.class}"/> + </target> + <target depends="profile-init,compile-single" if="profiler.info.jvmargs.agent" name="-profile-applet-pre72"> + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail> + <nbprofiledirect> + <classpath> + <path path="${run.classpath}"/> + </classpath> + </nbprofiledirect> + <profile classname="sun.applet.AppletViewer"> + <customize> + <arg value="${applet.url}"/> + </customize> + </profile> + </target> + <target depends="-init-macrodef-junit,profile-init,compile-test-single" if="profiler.info.jvmargs.agent" name="-profile-test-single-pre72"> + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail> + <nbprofiledirect> + <classpath> + <path path="${run.test.classpath}"/> + </classpath> + </nbprofiledirect> + <j2seproject3:junit excludes="${excludes}" includes="${includes}" testincludes="${profile.class}" testmethods=""> + <customize> + <jvmarg value="-agentlib:jdwp=transport=${debug-transport},address=${jpda.address}"/> + <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/> + <jvmarg value="${profiler.info.jvmargs.agent}"/> + <jvmarg line="${profiler.info.jvmargs}"/> + <classpath> + <path path="${run.test.classpath}"/> + </classpath> + </customize> + </j2seproject3:junit> + </target> + <!-- + end of pre NB72 profiling section + --> + <target if="netbeans.home" name="-profile-check"> + <condition property="profiler.configured"> + <or> + <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-agentpath:"/> + <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-javaagent:"/> + </or> + </condition> + </target> + <target depends="-profile-check,-profile-pre72" description="Profile a project in the IDE." if="profiler.configured" name="profile" unless="profiler.info.jvmargs.agent"> + <startprofiler/> + <antcall target="run"/> + </target> + <target depends="-profile-check,-profile-single-pre72" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-single" unless="profiler.info.jvmargs.agent"> + <fail unless="run.class">Must select one file in the IDE or set run.class</fail> + <startprofiler/> + <antcall target="run-single"/> + </target> + <target depends="-profile-test-single-pre72" description="Profile a selected test in the IDE." name="profile-test-single"/> + <target depends="-profile-check" description="Profile a selected test in the IDE." if="profiler.configured" name="profile-test" unless="profiler.info.jvmargs"> + <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail> + <startprofiler/> + <antcall target="test-single"/> + </target> + <target depends="-profile-check" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-test-with-main"> + <fail unless="run.class">Must select one file in the IDE or set run.class</fail> + <startprofiler/> + <antcall target="run-test-with-main"/> + </target> + <target depends="-profile-check,-profile-applet-pre72" if="profiler.configured" name="profile-applet" unless="profiler.info.jvmargs.agent"> + <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail> + <startprofiler/> + <antcall target="run-applet"/> + </target> + <!-- + =============== + JAVADOC SECTION + =============== + --> + <target depends="init" if="have.sources" name="-javadoc-build"> + <mkdir dir="${dist.javadoc.dir}"/> + <condition else="" property="javadoc.endorsed.classpath.cmd.line.arg" value="-J${endorsed.classpath.cmd.line.arg}"> + <and> + <isset property="endorsed.classpath.cmd.line.arg"/> + <not> + <equals arg1="${endorsed.classpath.cmd.line.arg}" arg2=""/> + </not> + </and> + </condition> + <condition else="" property="bug5101868workaround" value="*.java"> + <matches pattern="1\.[56](\..*)?" string="${java.version}"/> + </condition> + <condition else="" property="javadoc.html5.cmd.line.arg" value="-html5"> + <and> + <isset property="javadoc.html5"/> + <available file="${jdk.home}${file.separator}lib${file.separator}jrt-fs.jar"/> + </and> + </condition> + <javadoc additionalparam="-J-Dfile.encoding=${file.encoding} ${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" destdir="${dist.javadoc.dir}" docencoding="UTF-8" encoding="${javadoc.encoding.used}" failonerror="true" noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" notree="${javadoc.notree}" private="${javadoc.private}" source="${javac.source}" splitindex="${javadoc.splitindex}" use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" windowtitle="${javadoc.windowtitle}"> + <classpath> + <path path="${javac.classpath}"/> + </classpath> + <fileset dir="${src.dir}" excludes="${bug5101868workaround},${excludes}" includes="${includes}"> + <filename name="**/*.java"/> + </fileset> + <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false"> + <include name="**/*.java"/> + <exclude name="*.java"/> + </fileset> + <arg line="${javadoc.endorsed.classpath.cmd.line.arg}"/> + <arg line="${javadoc.html5.cmd.line.arg}"/> + </javadoc> + <copy todir="${dist.javadoc.dir}"> + <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}"> + <filename name="**/doc-files/**"/> + </fileset> + <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false"> + <include name="**/doc-files/**"/> + </fileset> + </copy> + </target> + <target depends="init,-javadoc-build" if="netbeans.home" name="-javadoc-browse" unless="no.javadoc.preview"> + <nbbrowse file="${dist.javadoc.dir}/index.html"/> + </target> + <target depends="init,-javadoc-build,-javadoc-browse" description="Build Javadoc." name="javadoc"/> + <!-- + ========================= + TEST COMPILATION SECTION + ========================= + --> + <target depends="init,compile" if="have.tests" name="-pre-pre-compile-test"> + <mkdir dir="${build.test.classes.dir}"/> + </target> + <target name="-pre-compile-test"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="-init-source-module-properties" if="named.module.internal" name="-init-test-javac-module-properties-with-module"> + <j2seproject3:modulename property="test.module.name" sourcepath="${test.src.dir}"/> + <condition else="${empty.dir}" property="javac.test.sourcepath" value="${test.src.dir}"> + <and> + <isset property="test.module.name"/> + <length length="0" string="${test.module.name}" when="greater"/> + </and> + </condition> + <condition else="--patch-module ${module.name}=${test.src.dir} --add-reads ${module.name}=ALL-UNNAMED" property="javac.test.compilerargs" value="--add-reads ${test.module.name}=ALL-UNNAMED"> + <and> + <isset property="test.module.name"/> + <length length="0" string="${test.module.name}" when="greater"/> + </and> + </condition> + </target> + <target depends="-init-source-module-properties" if="named.module.internal" name="-init-test-run-module-properties"> + <condition else="${module.name}" property="run.test.addexport.source.module.internal" value="${test.module.name}"> + <and> + <isset property="test.module.name"/> + <length length="0" string="${test.module.name}" when="greater"/> + </and> + </condition> + <fileset dir="${build.test.classes.dir}" id="run.test.packages.internal" includes="**/*.class"/> + <property location="${build.test.classes.dir}" name="build.test.classes.dir.abs.internal"/> + <pathconvert pathsep=" " property="run.test.addexports.internal" refid="run.test.packages.internal"> + <chainedmapper> + <regexpmapper from="^(.*)\Q${file.separator}\E.*\.class$$" to="\1"/> + <filtermapper> + <uniqfilter/> + <replacestring from="${build.test.classes.dir.abs.internal}" to=""/> + </filtermapper> + <cutdirsmapper dirs="1"/> + <packagemapper from="*" to="--add-exports ${run.test.addexport.source.module.internal}/*=ALL-UNNAMED"/> + </chainedmapper> + </pathconvert> + <condition else="--patch-module ${module.name}=${build.test.classes.dir} --add-modules ${module.name} --add-reads ${module.name}=ALL-UNNAMED ${run.test.addexports.internal}" property="run.test.jvmargs" value="--add-modules ${test.module.name} --add-reads ${test.module.name}=ALL-UNNAMED ${run.test.addexports.internal}"> + <and> + <isset property="test.module.name"/> + <length length="0" string="${test.module.name}" when="greater"/> + </and> + </condition> + </target> + <target depends="-init-source-module-properties" name="-init-test-module-properties-without-module" unless="named.module.internal"> + <property name="javac.test.sourcepath" value="${empty.dir}"/> + <property name="javac.test.compilerargs" value=""/> + <property name="run.test.jvmargs" value=""/> + </target> + <target depends="-init-test-javac-module-properties-with-module,-init-test-module-properties-without-module" name="-init-test-module-properties"/> + <target if="do.depend.true" name="-compile-test-depend"> + <j2seproject3:depend classpath="${javac.test.classpath}" destdir="${build.test.classes.dir}" srcdir="${test.src.dir}"/> + </target> + <target depends="init,deps-jar,compile,-init-test-module-properties,-pre-pre-compile-test,-pre-compile-test,-compile-test-depend" if="have.tests" name="-do-compile-test"> + <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" modulepath="${javac.test.modulepath}" processorpath="${javac.test.processorpath}" sourcepath="${javac.test.sourcepath}" srcdir="${test.src.dir}"> + <customize> + <compilerarg line="${javac.test.compilerargs}"/> + </customize> + </j2seproject3:javac> + <copy todir="${build.test.classes.dir}"> + <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/> + </copy> + </target> + <target name="-post-compile-test"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test,-do-compile-test,-post-compile-test" name="compile-test"/> + <target name="-pre-compile-test-single"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,deps-jar,compile,-init-test-module-properties,-pre-pre-compile-test,-pre-compile-test-single" if="have.tests" name="-do-compile-test-single"> + <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail> + <j2seproject3:force-recompile destdir="${build.test.classes.dir}"/> + <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}, module-info.java" modulepath="${javac.test.modulepath}" processorpath="${javac.test.processorpath}" sourcepath="${test.src.dir}" srcdir="${test.src.dir}"> + <customize> + <compilerarg line="${javac.test.compilerargs}"/> + </customize> + </j2seproject3:javac> + <copy todir="${build.test.classes.dir}"> + <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/> + </copy> + </target> + <target name="-post-compile-test-single"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single,-do-compile-test-single,-post-compile-test-single" name="compile-test-single"/> + <!-- + ======================= + TEST EXECUTION SECTION + ======================= + --> + <target depends="init" if="have.tests" name="-pre-test-run"> + <mkdir dir="${build.test.results.dir}"/> + </target> + <target depends="init,compile-test,-init-test-run-module-properties,-pre-test-run" if="have.tests" name="-do-test-run"> + <j2seproject3:test includes="${includes}" testincludes="**/*Test.java"/> + </target> + <target depends="init,compile-test,-pre-test-run,-do-test-run" if="have.tests" name="-post-test-run"> + <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail> + </target> + <target depends="init" if="have.tests" name="test-report"/> + <target depends="init" if="netbeans.home+have.tests" name="-test-browse"/> + <target depends="init,compile-test,-pre-test-run,-do-test-run,test-report,-post-test-run,-test-browse" description="Run unit tests." name="test"/> + <target depends="init" if="have.tests" name="-pre-test-run-single"> + <mkdir dir="${build.test.results.dir}"/> + </target> + <target depends="init,compile-test-single,-init-test-run-module-properties,-pre-test-run-single" if="have.tests" name="-do-test-run-single"> + <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail> + <j2seproject3:test excludes="" includes="${test.includes}" testincludes="${test.includes}"/> + </target> + <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" if="have.tests" name="-post-test-run-single"> + <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail> + </target> + <target depends="init,compile-test-single,-init-test-run-module-properties,-pre-test-run-single,-do-test-run-single,-post-test-run-single" description="Run single unit test." name="test-single"/> + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single-method"> + <fail unless="test.class">Must select some files in the IDE or set test.class</fail> + <fail unless="test.method">Must select some method in the IDE or set test.method</fail> + <j2seproject3:test excludes="" includes="${javac.includes}" testincludes="${test.class}" testmethods="${test.method}"/> + </target> + <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method" if="have.tests" name="-post-test-run-single-method"> + <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail> + </target> + <target depends="init,compile-test-single,-init-test-run-module-properties,-pre-test-run-single,-do-test-run-single-method,-post-test-run-single-method" description="Run single unit test." name="test-single-method"/> + <!-- + ======================= + TEST DEBUGGING SECTION + ======================= + --> + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test"> + <fail unless="test.class">Must select one file in the IDE or set test.class</fail> + <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testincludes="${javac.includes}"/> + </target> + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test-method"> + <fail unless="test.class">Must select one file in the IDE or set test.class</fail> + <fail unless="test.method">Must select some method in the IDE or set test.method</fail> + <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testMethod="${test.method}" testincludes="${test.class}" testmethods="${test.method}"/> + </target> + <target depends="init,compile-test" if="netbeans.home+have.tests" name="-debug-start-debugger-test"> + <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${test.class}"/> + </target> + <target depends="init,compile-test-single,-init-test-run-module-properties,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/> + <target depends="init,compile-test-single,-init-test-run-module-properties,-debug-start-debugger-test,-debug-start-debuggee-test-method" name="debug-test-method"/> + <target depends="debug-test-method" name="debug-single-method"/> + <target depends="init,-pre-debug-fix,compile-test-single" if="netbeans.home" name="-do-debug-fix-test"> + <j2seproject1:nbjpdareload dir="${build.test.classes.dir}"/> + </target> + <target depends="init,-pre-debug-fix,-do-debug-fix-test" if="netbeans.home" name="debug-fix-test"/> + <!-- + ========================= + APPLET EXECUTION SECTION + ========================= + --> + <target depends="init,compile-single" name="run-applet"> + <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail> + <j2seproject1:java classname="sun.applet.AppletViewer"> + <customize> + <arg value="${applet.url}"/> + </customize> + </j2seproject1:java> + </target> + <!-- + ========================= + APPLET DEBUGGING SECTION + ========================= + --> + <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-applet"> + <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail> + <j2seproject3:debug classname="sun.applet.AppletViewer"> + <customizeDebuggee> + <arg value="${applet.url}"/> + </customizeDebuggee> + </j2seproject3:debug> + </target> + <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-applet" if="netbeans.home" name="debug-applet"/> + <!-- + =============== + CLEANUP SECTION + =============== + --> + <target name="-deps-clean-init" unless="built-clean.properties"> + <property location="${build.dir}/built-clean.properties" name="built-clean.properties"/> + <delete file="${built-clean.properties}" quiet="true"/> + </target> + <target if="already.built.clean.${basedir}" name="-warn-already-built-clean"> + <echo level="warn" message="Cycle detected: Fees_Managment_System was already built"/> + </target> + <target depends="init,-deps-clean-init" name="deps-clean" unless="no.deps"> + <mkdir dir="${build.dir}"/> + <touch file="${built-clean.properties}" verbose="false"/> + <property file="${built-clean.properties}" prefix="already.built.clean."/> + <antcall target="-warn-already-built-clean"/> + <propertyfile file="${built-clean.properties}"> + <entry key="${basedir}" value=""/> + </propertyfile> + </target> + <target depends="init" name="-do-clean"> + <delete dir="${build.dir}"/> + <delete dir="${dist.jlink.output}"/> + <delete dir="${dist.dir}" followsymlinks="false" includeemptydirs="true"/> + </target> + <target name="-post-clean"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,deps-clean,-do-clean,-post-clean" description="Clean build products." name="clean"/> + <target name="-check-call-dep"> + <property file="${call.built.properties}" prefix="already.built."/> + <condition property="should.call.dep"> + <and> + <not> + <isset property="already.built.${call.subproject}"/> + </not> + <available file="${call.script}"/> + </and> + </condition> + </target> + <target depends="-check-call-dep" if="should.call.dep" name="-maybe-call-dep"> + <ant antfile="${call.script}" inheritall="false" target="${call.target}"> + <propertyset> + <propertyref prefix="transfer."/> + <mapper from="transfer.*" to="*" type="glob"/> + </propertyset> + </ant> + </target> +</project> diff --git a/nbproject/genfiles.properties b/nbproject/genfiles.properties new file mode 100644 index 0000000..3fde964 --- /dev/null +++ b/nbproject/genfiles.properties @@ -0,0 +1,8 @@ +build.xml.data.CRC32=c22ef243 +build.xml.script.CRC32=d02eab33 +build.xml.stylesheet.CRC32=f85dc8f2@1.104.0.48 +# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. +# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. +nbproject/build-impl.xml.data.CRC32=c22ef243 +nbproject/build-impl.xml.script.CRC32=b72dbf07 +nbproject/build-impl.xml.stylesheet.CRC32=12e0a6c2@1.104.0.48 diff --git a/nbproject/project.properties b/nbproject/project.properties new file mode 100644 index 0000000..e6ca430 --- /dev/null +++ b/nbproject/project.properties @@ -0,0 +1,125 @@ +annotation.processing.enabled=true +annotation.processing.enabled.in.editor=false +annotation.processing.processors.list= +annotation.processing.run.all.processors=true +annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output +application.title=Fees_Managment_System +application.vendor=yash +build.classes.dir=${build.dir}/classes +build.classes.excludes=**/*.java,**/*.form +# This directory is removed when the project is cleaned: +build.dir=build +build.generated.dir=${build.dir}/generated +build.generated.sources.dir=${build.dir}/generated-sources +# Only compile against the classpath explicitly listed here: +build.sysclasspath=ignore +build.test.classes.dir=${build.dir}/test/classes +build.test.results.dir=${build.dir}/test/results +# Uncomment to specify the preferred debugger connection transport: +#debug.transport=dt_socket +debug.classpath=\ + ${run.classpath} +debug.modulepath=\ + ${run.modulepath} +debug.test.classpath=\ + ${run.test.classpath} +debug.test.modulepath=\ + ${run.test.modulepath} +# Files in build.classes.dir which should be excluded from distribution jar +dist.archive.excludes= +# This directory is removed when the project is cleaned: +dist.dir=dist +dist.jar=${dist.dir}/Fees_Managment_System.jar +dist.javadoc.dir=${dist.dir}/javadoc +dist.jlink.dir=${dist.dir}/jlink +dist.jlink.output=${dist.jlink.dir}/Fees_Managment_System +endorsed.classpath= +excludes= +file.reference.commons-collections4-4.4.jar=C:\\Users\\yash\\Downloads\\commons-collections4-4.4.jar +file.reference.jcalendar-1.4.jar=C:\\Users\\yash\\OneDrive\\Desktop\\jcalendar-1.4.jar +file.reference.mysql-connector-java-8.0.27.jar=C:\\Users\\yash\\Downloads\\mysql-connector-java-8.0.27\\mysql-connector-java-8.0.27.jar +file.reference.mysql-connector-java-8.0.27.jar-1=C:\\Users\\yash\\OneDrive\\Desktop\\java\\mysql-connector-java-8.0.27.jar +file.reference.poi-3.17.jar=C:\\Users\\yash\\Downloads\\poi-3.17.jar +file.reference.poi-examples-3.17.jar=C:\\Users\\yash\\Downloads\\poi-examples-3.17.jar +file.reference.poi-excelant-3.17.jar=C:\\Users\\yash\\Downloads\\poi-excelant-3.17.jar +file.reference.poi-ooxml-3.17.jar=C:\\Users\\yash\\Downloads\\poi-ooxml-3.17.jar +file.reference.poi-ooxml-schemas-3.17.jar=C:\\Users\\yash\\Downloads\\poi-ooxml-schemas-3.17.jar +file.reference.poi-poi=C:\\Users\\yash\\Downloads\\poi\\poi +file.reference.poi-scratchpad-3.17.jar=C:\\Users\\yash\\Downloads\\poi-scratchpad-3.17.jar +file.reference.xmlbeans-3.0.1.jar=C:\\Users\\yash\\Downloads\\xmlbeans-3.0.1.jar +includes=** +jar.compress=false +javac.classpath=\ + ${file.reference.jcalendar-1.4.jar}:\ + ${file.reference.mysql-connector-java-8.0.27.jar}:\ + ${libs.JAVADB_DRIVER_LABEL.classpath}:\ + ${file.reference.mysql-connector-java-8.0.27.jar-1}:\ + ${libs.absolutelayout.classpath}:\ + ${file.reference.poi-poi}:\ + ${file.reference.commons-collections4-4.4.jar}:\ + ${file.reference.poi-3.17.jar}:\ + ${file.reference.poi-examples-3.17.jar}:\ + ${file.reference.poi-excelant-3.17.jar}:\ + ${file.reference.poi-ooxml-3.17.jar}:\ + ${file.reference.poi-ooxml-schemas-3.17.jar}:\ + ${file.reference.poi-scratchpad-3.17.jar}:\ + ${file.reference.xmlbeans-3.0.1.jar} +# Space-separated list of extra javac options +javac.compilerargs= +javac.deprecation=false +javac.external.vm=true +javac.modulepath= +javac.processormodulepath= +javac.processorpath=\ + ${javac.classpath} +javac.source=19 +javac.target=19 +javac.test.classpath=\ + ${javac.classpath}:\ + ${build.classes.dir} +javac.test.modulepath=\ + ${javac.modulepath} +javac.test.processorpath=\ + ${javac.test.classpath} +javadoc.additionalparam= +javadoc.author=false +javadoc.encoding=${source.encoding} +javadoc.html5=false +javadoc.noindex=false +javadoc.nonavbar=false +javadoc.notree=false +javadoc.private=false +javadoc.reference.poi-poi=C:\\Users\\yash\\Downloads\\poi\\poi\\commons-collections4-4.4.jar +javadoc.splitindex=true +javadoc.use=true +javadoc.version=false +javadoc.windowtitle= +# The jlink additional root modules to resolve +jlink.additionalmodules= +# The jlink additional command line parameters +jlink.additionalparam= +jlink.launcher=true +jlink.launcher.name=Fees_Managment_System +main.class=fees_managment_syatem.Fees_Managment_Syatem +manifest.file=manifest.mf +meta.inf.dir=${src.dir}/META-INF +mkdist.disabled=false +platform.active=default_platform +run.classpath=\ + ${javac.classpath}:\ + ${build.classes.dir} +# Space-separated list of JVM arguments used when running the project. +# You may also define separate properties like run-sys-prop.name=value instead of -Dname=value. +# To set system properties for unit tests define test-sys-prop.name=value: +run.jvmargs= +run.modulepath=\ + ${javac.modulepath} +run.test.classpath=\ + ${javac.test.classpath}:\ + ${build.test.classes.dir} +run.test.modulepath=\ + ${javac.test.modulepath} +source.encoding=UTF-8 +source.reference.poi-poi=C:\\Users\\yash\\Downloads\\poi\\poi\\commons-collections4-4.4.jar +src.dir=src +test.src.dir=test diff --git a/nbproject/project.xml b/nbproject/project.xml new file mode 100644 index 0000000..1d96f1b --- /dev/null +++ b/nbproject/project.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xmlns="http://www.netbeans.org/ns/project/1"> + <type>org.netbeans.modules.java.j2seproject</type> + <configuration> + <data xmlns="http://www.netbeans.org/ns/j2se-project/3"> + <name>Fees_Managment_System</name> + <source-roots> + <root id="src.dir"/> + </source-roots> + <test-roots> + <root id="test.src.dir"/> + </test-roots> + </data> + </configuration> +</project> From a93f1bfd70c8c237ec0a8198233dafe2499bd48a Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 11:06:16 +0530 Subject: [PATCH 07/20] Create t1 --- build/classes/t1 | 1 + 1 file changed, 1 insertion(+) create mode 100644 build/classes/t1 diff --git a/build/classes/t1 b/build/classes/t1 new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/build/classes/t1 @@ -0,0 +1 @@ + From f84cbaa936b599ffd9629071cef965d91c424f42 Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 11:06:38 +0530 Subject: [PATCH 08/20] Add files via upload --- build/classes/build-impl.xml | 1771 +++++++++++++++++++++++++++++ build/classes/genfiles.properties | 8 + build/classes/project.properties | 125 ++ build/classes/project.xml | 15 + 4 files changed, 1919 insertions(+) create mode 100644 build/classes/build-impl.xml create mode 100644 build/classes/genfiles.properties create mode 100644 build/classes/project.properties create mode 100644 build/classes/project.xml diff --git a/build/classes/build-impl.xml b/build/classes/build-impl.xml new file mode 100644 index 0000000..3b5ca2e --- /dev/null +++ b/build/classes/build-impl.xml @@ -0,0 +1,1771 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- +*** GENERATED FROM project.xml - DO NOT EDIT *** +*** EDIT ../build.xml INSTEAD *** + +For the purpose of easier reading the script +is divided into following sections: + + - initialization + - compilation + - jar + - execution + - debugging + - javadoc + - test compilation + - test execution + - test debugging + - applet + - cleanup + + --> +<project xmlns:if="ant:if" xmlns:j2seproject1="http://www.netbeans.org/ns/j2se-project/1" xmlns:j2seproject3="http://www.netbeans.org/ns/j2se-project/3" xmlns:jaxrpc="http://www.netbeans.org/ns/j2se-project/jax-rpc" xmlns:unless="ant:unless" basedir=".." default="default" name="Fees_Managment_System-impl"> + <fail message="Please build using Ant 1.8.0 or higher."> + <condition> + <not> + <antversion atleast="1.8.0"/> + </not> + </condition> + </fail> + <target depends="test,jar,javadoc" description="Build and test whole project." name="default"/> + <!-- + ====================== + INITIALIZATION SECTION + ====================== + --> + <target name="-pre-init"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="-pre-init" name="-init-private"> + <property file="nbproject/private/config.properties"/> + <property file="nbproject/private/configs/${config}.properties"/> + <property file="nbproject/private/private.properties"/> + </target> + <target depends="-pre-init,-init-private" name="-init-user"> + <property file="${user.properties.file}"/> + <!-- The two properties below are usually overridden --> + <!-- by the active platform. Just a fallback. --> + <property name="default.javac.source" value="1.8"/> + <property name="default.javac.target" value="1.8"/> + </target> + <target depends="-pre-init,-init-private,-init-user" name="-init-project"> + <property file="nbproject/configs/${config}.properties"/> + <property file="nbproject/project.properties"/> + </target> + <target name="-init-modules-supported"> + <condition property="modules.supported.internal" value="true"> + <not> + <matches pattern="1\.[0-8](\..*)?" string="${javac.source}"/> + </not> + </condition> + </target> + <target depends="-init-modules-supported" if="modules.supported.internal" name="-init-macrodef-modulename"> + <macrodef name="modulename" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute name="property"/> + <attribute name="sourcepath"/> + <sequential> + <loadresource property="@{property}" quiet="true"> + <javaresource classpath="@{sourcepath}" name="module-info.java" parentFirst="false"/> + <filterchain> + <stripjavacomments/> + <linecontainsregexp> + <regexp pattern="module .* \{"/> + </linecontainsregexp> + <tokenfilter> + <linetokenizer/> + <replaceregex flags="s" pattern="(\s*module\s+)(\S*)(\s*\{.*)" replace="\2"/> + </tokenfilter> + <striplinebreaks/> + </filterchain> + </loadresource> + </sequential> + </macrodef> + </target> + <target depends="-init-modules-supported,-init-macrodef-modulename" if="modules.supported.internal" name="-init-source-module-properties"> + <fail message="Java 9 support requires Ant 1.10.0 or higher."> + <condition> + <not> + <antversion atleast="1.10.0"/> + </not> + </condition> + </fail> + <j2seproject3:modulename property="module.name" sourcepath="${src.dir}"/> + <condition property="named.module.internal"> + <and> + <isset property="module.name"/> + <length length="0" string="${module.name}" when="greater"/> + </and> + </condition> + <condition property="unnamed.module.internal"> + <not> + <isset property="named.module.internal"/> + </not> + </condition> + <property name="javac.modulepath" value=""/> + <property name="run.modulepath" value="${javac.modulepath}"/> + <property name="module.build.classes.dir" value="${build.classes.dir}"/> + <property name="debug.modulepath" value="${run.modulepath}"/> + <property name="javac.upgrademodulepath" value=""/> + <property name="run.upgrademodulepath" value="${javac.upgrademodulepath}"/> + <condition else="" property="javac.systemmodulepath.cmd.line.arg" value="--system '${javac.systemmodulepath}'"> + <and> + <isset property="javac.systemmodulepath"/> + <length length="0" string="${javac.systemmodulepath}" when="greater"/> + </and> + </condition> + <property name="dist.jlink.dir" value="${dist.dir}/jlink"/> + <property name="dist.jlink.output" value="${dist.jlink.dir}/${application.title}"/> + <property name="module.name" value=""/> + </target> + <target depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property,-init-modules-supported" name="-do-init"> + <property name="platform.java" value="${java.home}/bin/java"/> + <available file="${manifest.file}" property="manifest.available"/> + <condition property="splashscreen.available"> + <and> + <not> + <equals arg1="${application.splash}" arg2="" trim="true"/> + </not> + <available file="${application.splash}"/> + </and> + </condition> + <condition property="main.class.available"> + <and> + <isset property="main.class"/> + <not> + <equals arg1="${main.class}" arg2="" trim="true"/> + </not> + </and> + </condition> + <condition property="profile.available"> + <and> + <isset property="javac.profile"/> + <length length="0" string="${javac.profile}" when="greater"/> + <not> + <matches pattern="1\.[0-7](\..*)?" string="${javac.source}"/> + </not> + </and> + </condition> + <condition property="do.archive"> + <or> + <not> + <istrue value="${jar.archive.disabled}"/> + </not> + <istrue value="${not.archive.disabled}"/> + </or> + </condition> + <condition property="do.archive+manifest.available"> + <and> + <isset property="manifest.available"/> + <istrue value="${do.archive}"/> + </and> + </condition> + <condition property="do.archive+main.class.available"> + <and> + <isset property="main.class.available"/> + <istrue value="${do.archive}"/> + </and> + </condition> + <condition property="do.archive+splashscreen.available"> + <and> + <isset property="splashscreen.available"/> + <istrue value="${do.archive}"/> + </and> + </condition> + <condition property="do.archive+profile.available"> + <and> + <isset property="profile.available"/> + <istrue value="${do.archive}"/> + </and> + </condition> + <condition property="have.tests"> + <or> + <available file="${test.src.dir}"/> + </or> + </condition> + <condition property="have.sources"> + <or> + <available file="${src.dir}"/> + </or> + </condition> + <condition property="netbeans.home+have.tests"> + <and> + <isset property="netbeans.home"/> + <isset property="have.tests"/> + </and> + </condition> + <condition property="no.javadoc.preview"> + <and> + <isset property="javadoc.preview"/> + <isfalse value="${javadoc.preview}"/> + </and> + </condition> + <property name="run.jvmargs" value=""/> + <property name="run.jvmargs.ide" value=""/> + <property name="javac.compilerargs" value=""/> + <property name="work.dir" value="${basedir}"/> + <condition property="no.deps"> + <and> + <istrue value="${no.dependencies}"/> + </and> + </condition> + <property name="javac.debug" value="true"/> + <property name="javadoc.preview" value="true"/> + <property name="application.args" value=""/> + <property name="source.encoding" value="${file.encoding}"/> + <property name="runtime.encoding" value="${source.encoding}"/> + <property name="manifest.encoding" value="${source.encoding}"/> + <condition property="javadoc.encoding.used" value="${javadoc.encoding}"> + <and> + <isset property="javadoc.encoding"/> + <not> + <equals arg1="${javadoc.encoding}" arg2=""/> + </not> + </and> + </condition> + <property name="javadoc.encoding.used" value="${source.encoding}"/> + <property name="includes" value="**"/> + <property name="excludes" value=""/> + <property name="do.depend" value="false"/> + <condition property="do.depend.true"> + <istrue value="${do.depend}"/> + </condition> + <path id="endorsed.classpath.path" path="${endorsed.classpath}"/> + <condition else="" property="endorsed.classpath.cmd.line.arg" value="-Xbootclasspath/p:'${toString:endorsed.classpath.path}'"> + <and> + <isset property="endorsed.classpath"/> + <not> + <equals arg1="${endorsed.classpath}" arg2="" trim="true"/> + </not> + </and> + </condition> + <condition else="" property="javac.profile.cmd.line.arg" value="-profile ${javac.profile}"> + <isset property="profile.available"/> + </condition> + <condition else="false" property="jdkBug6558476"> + <and> + <matches pattern="1\.[56]" string="${java.specification.version}"/> + <not> + <os family="unix"/> + </not> + </and> + </condition> + <condition else="false" property="javac.fork"> + <or> + <istrue value="${jdkBug6558476}"/> + <istrue value="${javac.external.vm}"/> + </or> + </condition> + <property name="jar.index" value="false"/> + <property name="jar.index.metainf" value="${jar.index}"/> + <property name="copylibs.rebase" value="true"/> + <available file="${meta.inf.dir}/persistence.xml" property="has.persistence.xml"/> + <condition property="junit.available"> + <or> + <available classname="org.junit.Test" classpath="${run.test.classpath}"/> + <available classname="junit.framework.Test" classpath="${run.test.classpath}"/> + </or> + </condition> + <condition property="testng.available"> + <available classname="org.testng.annotations.Test" classpath="${run.test.classpath}"/> + </condition> + <condition property="junit+testng.available"> + <and> + <istrue value="${junit.available}"/> + <istrue value="${testng.available}"/> + </and> + </condition> + <condition else="testng" property="testng.mode" value="mixed"> + <istrue value="${junit+testng.available}"/> + </condition> + <condition else="" property="testng.debug.mode" value="-mixed"> + <istrue value="${junit+testng.available}"/> + </condition> + <property name="java.failonerror" value="true"/> + </target> + <target name="-post-init"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init" name="-init-check"> + <fail unless="src.dir">Must set src.dir</fail> + <fail unless="test.src.dir">Must set test.src.dir</fail> + <fail unless="build.dir">Must set build.dir</fail> + <fail unless="dist.dir">Must set dist.dir</fail> + <fail unless="build.classes.dir">Must set build.classes.dir</fail> + <fail unless="dist.javadoc.dir">Must set dist.javadoc.dir</fail> + <fail unless="build.test.classes.dir">Must set build.test.classes.dir</fail> + <fail unless="build.test.results.dir">Must set build.test.results.dir</fail> + <fail unless="build.classes.excludes">Must set build.classes.excludes</fail> + <fail unless="dist.jar">Must set dist.jar</fail> + </target> + <target name="-init-macrodef-property"> + <macrodef name="property" uri="http://www.netbeans.org/ns/j2se-project/1"> + <attribute name="name"/> + <attribute name="value"/> + <sequential> + <property name="@{name}" value="${@{value}}"/> + </sequential> + </macrodef> + </target> + <target depends="-init-ap-cmdline-properties,-init-source-module-properties" if="modules.supported.internal" name="-init-macrodef-javac-with-module"> + <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${src.dir}" name="srcdir"/> + <attribute default="${build.classes.dir}" name="destdir"/> + <attribute default="${javac.classpath}" name="classpath"/> + <attribute default="${javac.modulepath}" name="modulepath"/> + <attribute default="${javac.upgrademodulepath}" name="upgrademodulepath"/> + <attribute default="${javac.processorpath}" name="processorpath"/> + <attribute default="${javac.processormodulepath}" name="processormodulepath"/> + <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="${javac.debug}" name="debug"/> + <attribute default="${empty.dir}" name="sourcepath" unless:set="named.module.internal"/> + <attribute default="${src.dir}" if:set="named.module.internal" name="sourcepath"/> + <attribute default="${empty.dir}" name="gensrcdir"/> + <element name="customize" optional="true"/> + <sequential> + <condition property="warn.excludes.internal"> + <and> + <isset property="named.module.internal"/> + <length length="0" string="@{excludes}" trim="true" when="greater"/> + </and> + </condition> + <echo if:set="warn.excludes.internal" level="warning" message="The javac excludes are not supported in the JDK 9 Named Module."/> + <property location="${build.dir}/empty" name="empty.dir"/> + <mkdir dir="${empty.dir}"/> + <mkdir dir="@{apgeneratedsrcdir}"/> + <condition property="processormodulepath.set"> + <resourcecount count="0" when="greater"> + <path> + <pathelement path="@{processormodulepath}"/> + </path> + </resourcecount> + </condition> + <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}"> + <src> + <dirset dir="@{gensrcdir}" erroronmissingdir="false"> + <include name="*"/> + </dirset> + </src> + <classpath> + <path path="@{classpath}"/> + </classpath> + <modulepath> + <path path="@{modulepath}"/> + </modulepath> + <upgrademodulepath> + <path path="@{upgrademodulepath}"/> + </upgrademodulepath> + <compilerarg line="${javac.systemmodulepath.cmd.line.arg}"/> + <compilerarg line="${javac.profile.cmd.line.arg}"/> + <compilerarg line="${javac.compilerargs}"/> + <compilerarg if:set="processormodulepath.set" value="--processor-module-path"/> + <compilerarg if:set="processormodulepath.set" path="@{processormodulepath}"/> + <compilerarg unless:set="processormodulepath.set" value="-processorpath"/> + <compilerarg path="@{processorpath}:${empty.dir}" unless:set="processormodulepath.set"/> + <compilerarg line="${ap.processors.internal}"/> + <compilerarg line="${annotation.processing.processor.options}"/> + <compilerarg value="-s"/> + <compilerarg path="@{apgeneratedsrcdir}"/> + <compilerarg line="${ap.proc.none.internal}"/> + <customize/> + </javac> + </sequential> + </macrodef> + </target> + <target depends="-init-ap-cmdline-properties,-init-source-module-properties" if="ap.supported.internal" name="-init-macrodef-javac-with-processors" unless="modules.supported.internal"> + <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${src.dir}" name="srcdir"/> + <attribute default="${build.classes.dir}" name="destdir"/> + <attribute default="${javac.classpath}" name="classpath"/> + <attribute default="${javac.modulepath}" name="modulepath"/> + <attribute default="${javac.upgrademodulepath}" name="upgrademodulepath"/> + <attribute default="${javac.processorpath}" name="processorpath"/> + <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="${javac.debug}" name="debug"/> + <attribute default="${empty.dir}" name="sourcepath"/> + <attribute default="${empty.dir}" name="gensrcdir"/> + <element name="customize" optional="true"/> + <sequential> + <property location="${build.dir}/empty" name="empty.dir"/> + <mkdir dir="${empty.dir}"/> + <mkdir dir="@{apgeneratedsrcdir}"/> + <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}"> + <src> + <dirset dir="@{gensrcdir}" erroronmissingdir="false"> + <include name="*"/> + </dirset> + </src> + <classpath> + <path path="@{classpath}"/> + </classpath> + <compilerarg line="${endorsed.classpath.cmd.line.arg}"/> + <compilerarg line="${javac.profile.cmd.line.arg}"/> + <compilerarg line="${javac.compilerargs}"/> + <compilerarg value="-processorpath"/> + <compilerarg path="@{processorpath}:${empty.dir}"/> + <compilerarg line="${ap.processors.internal}"/> + <compilerarg line="${annotation.processing.processor.options}"/> + <compilerarg value="-s"/> + <compilerarg path="@{apgeneratedsrcdir}"/> + <compilerarg line="${ap.proc.none.internal}"/> + <customize/> + </javac> + </sequential> + </macrodef> + </target> + <target depends="-init-ap-cmdline-properties,-init-source-module-properties" name="-init-macrodef-javac-without-processors" unless="ap.supported.internal"> + <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${src.dir}" name="srcdir"/> + <attribute default="${build.classes.dir}" name="destdir"/> + <attribute default="${javac.classpath}" name="classpath"/> + <attribute default="${javac.modulepath}" name="modulepath"/> + <attribute default="${javac.upgrademodulepath}" name="upgrademodulepath"/> + <attribute default="${javac.processorpath}" name="processorpath"/> + <attribute default="${build.generated.sources.dir}/ap-source-output" name="apgeneratedsrcdir"/> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="${javac.debug}" name="debug"/> + <attribute default="${empty.dir}" name="sourcepath"/> + <attribute default="${empty.dir}" name="gensrcdir"/> + <element name="customize" optional="true"/> + <sequential> + <property location="${build.dir}/empty" name="empty.dir"/> + <mkdir dir="${empty.dir}"/> + <javac debug="@{debug}" deprecation="${javac.deprecation}" destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" fork="${javac.fork}" includeantruntime="false" includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}"> + <src> + <dirset dir="@{gensrcdir}" erroronmissingdir="false"> + <include name="*"/> + </dirset> + </src> + <classpath> + <path path="@{classpath}"/> + </classpath> + <compilerarg line="${endorsed.classpath.cmd.line.arg}"/> + <compilerarg line="${javac.profile.cmd.line.arg}"/> + <compilerarg line="${javac.compilerargs}"/> + <customize/> + </javac> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-javac-with-module,-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors" name="-init-macrodef-javac"> + <macrodef name="depend" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${src.dir}" name="srcdir"/> + <attribute default="${build.classes.dir}" name="destdir"/> + <attribute default="${javac.classpath}" name="classpath"/> + <sequential> + <depend cache="${build.dir}/depcache" destdir="@{destdir}" excludes="${excludes}" includes="${includes}" srcdir="@{srcdir}"> + <classpath> + <path path="@{classpath}"/> + </classpath> + </depend> + </sequential> + </macrodef> + <macrodef name="force-recompile" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${build.classes.dir}" name="destdir"/> + <sequential> + <fail unless="javac.includes">Must set javac.includes</fail> + <pathconvert pathsep="${line.separator}" property="javac.includes.binary"> + <path> + <filelist dir="@{destdir}" files="${javac.includes}"/> + </path> + <globmapper from="*.java" to="*.class"/> + </pathconvert> + <tempfile deleteonexit="true" property="javac.includesfile.binary"/> + <echo file="${javac.includesfile.binary}" message="${javac.includes.binary}"/> + <delete> + <files includesfile="${javac.includesfile.binary}"/> + </delete> + <delete> + <fileset file="${javac.includesfile.binary}"/> + </delete> + </sequential> + </macrodef> + </target> + <target if="${junit.available}" name="-init-macrodef-junit-init"> + <condition else="false" property="nb.junit.batch" value="true"> + <and> + <istrue value="${junit.available}"/> + <not> + <isset property="test.method"/> + </not> + </and> + </condition> + <condition else="false" property="nb.junit.single" value="true"> + <and> + <istrue value="${junit.available}"/> + <isset property="test.method"/> + </and> + </condition> + </target> + <target name="-init-test-properties"> + <property name="test.binaryincludes" value="<nothing>"/> + <property name="test.binarytestincludes" value=""/> + <property name="test.binaryexcludes" value=""/> + </target> + <target depends="-init-modules-supported" if="modules.supported.internal" name="-init-macrodef-junit-prototype-with-module"> + <macrodef name="junit-prototype" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <element name="customizePrototype" optional="true"/> + <sequential> + <property name="junit.forkmode" value="perTest"/> + <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}"> + <syspropertyset> + <propertyref prefix="test-sys-prop."/> + <mapper from="test-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <classpath> + <path path="${run.test.classpath}"/> + </classpath> + <modulepath> + <path path="${run.test.modulepath}"/> + </modulepath> + <formatter type="brief" usefile="false"/> + <formatter type="xml"/> + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> + <jvmarg value="-ea"/> + <jvmarg line="${run.test.jvmargs}"/> + <customizePrototype/> + </junit> + </sequential> + </macrodef> + </target> + <target depends="-init-modules-supported" name="-init-macrodef-junit-prototype-without-module" unless="modules.supported.internal"> + <macrodef name="junit-prototype" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <element name="customizePrototype" optional="true"/> + <sequential> + <property name="junit.forkmode" value="perTest"/> + <junit dir="${work.dir}" errorproperty="tests.failed" failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" showoutput="true" tempdir="${build.dir}"> + <syspropertyset> + <propertyref prefix="test-sys-prop."/> + <mapper from="test-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <classpath> + <path path="${run.test.classpath}"/> + </classpath> + <formatter type="brief" usefile="false"/> + <formatter type="xml"/> + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> + <jvmarg value="-ea"/> + <customizePrototype/> + </junit> + </sequential> + </macrodef> + </target> + <target depends="-init-test-properties,-init-macrodef-junit-prototype-with-module,-init-macrodef-junit-prototype-without-module" if="${nb.junit.single}" name="-init-macrodef-junit-single" unless="${nb.junit.batch}"> + <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element name="customize" optional="true"/> + <sequential> + <j2seproject3:junit-prototype> + <customizePrototype> + <test methods="@{testmethods}" name="@{testincludes}" todir="${build.test.results.dir}"/> + <customize/> + </customizePrototype> + </j2seproject3:junit-prototype> + </sequential> + </macrodef> + </target> + <target depends="-init-test-properties,-init-macrodef-junit-prototype-with-module,-init-macrodef-junit-prototype-without-module" if="${nb.junit.batch}" name="-init-macrodef-junit-batch" unless="${nb.junit.single}"> + <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element name="customize" optional="true"/> + <sequential> + <j2seproject3:junit-prototype> + <customizePrototype> + <batchtest todir="${build.test.results.dir}"> + <fileset dir="${test.src.dir}" excludes="@{excludes},${excludes}" includes="@{includes}"> + <filename name="@{testincludes}"/> + </fileset> + <fileset dir="${build.test.classes.dir}" excludes="@{excludes},${excludes},${test.binaryexcludes}" includes="${test.binaryincludes}"> + <filename name="${test.binarytestincludes}"/> + </fileset> + </batchtest> + <customize/> + </customizePrototype> + </j2seproject3:junit-prototype> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-junit-init,-init-macrodef-junit-single, -init-macrodef-junit-batch" if="${junit.available}" name="-init-macrodef-junit"/> + <target if="${testng.available}" name="-init-macrodef-testng"> + <macrodef name="testng" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element name="customize" optional="true"/> + <sequential> + <condition else="" property="testng.methods.arg" value="@{testincludes}.@{testmethods}"> + <isset property="test.method"/> + </condition> + <union id="test.set"> + <fileset dir="${test.src.dir}" excludes="@{excludes},**/*.xml,${excludes}" includes="@{includes}"> + <filename name="@{testincludes}"/> + </fileset> + </union> + <taskdef classname="org.testng.TestNGAntTask" classpath="${run.test.classpath}" name="testng"/> + <testng classfilesetref="test.set" failureProperty="tests.failed" listeners="org.testng.reporters.VerboseReporter" methods="${testng.methods.arg}" mode="${testng.mode}" outputdir="${build.test.results.dir}" suitename="Fees_Managment_System" testname="TestNG tests" workingDir="${work.dir}"> + <xmlfileset dir="${build.test.classes.dir}" includes="@{testincludes}"/> + <propertyset> + <propertyref prefix="test-sys-prop."/> + <mapper from="test-sys-prop.*" to="*" type="glob"/> + </propertyset> + <classpath> + <path path="${run.test.classpath}"/> + </classpath> + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> + <customize/> + </testng> + </sequential> + </macrodef> + </target> + <target name="-init-macrodef-test-impl"> + <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element implicit="true" name="customize" optional="true"/> + <sequential> + <echo>No tests executed.</echo> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-junit" if="${junit.available}" name="-init-macrodef-junit-impl"> + <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element implicit="true" name="customize" optional="true"/> + <sequential> + <j2seproject3:junit excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}"> + <customize/> + </j2seproject3:junit> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-testng" if="${testng.available}" name="-init-macrodef-testng-impl"> + <macrodef name="test-impl" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element implicit="true" name="customize" optional="true"/> + <sequential> + <j2seproject3:testng excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}"> + <customize/> + </j2seproject3:testng> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-test-impl,-init-macrodef-junit-impl,-init-macrodef-testng-impl" name="-init-macrodef-test"> + <macrodef name="test" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <sequential> + <j2seproject3:test-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}"> + <customize> + <jvmarg line="${run.jvmargs}"/> + <jvmarg line="${run.jvmargs.ide}"/> + </customize> + </j2seproject3:test-impl> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-junit" if="${junit.available}" name="-init-macrodef-junit-debug-impl"> + <macrodef name="test-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <element name="customizeDebuggee" optional="true"/> + <sequential> + <j2seproject3:junit excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}"> + <customize> + <jvmarg value="-agentlib:jdwp=transport=${debug-transport},address=${jpda.address}"/> + <customizeDebuggee/> + </customize> + </j2seproject3:junit> + </sequential> + </macrodef> + </target> + <target if="${testng.available}" name="-init-macrodef-testng-debug"> + <macrodef name="testng-debug" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${main.class}" name="testClass"/> + <attribute default="" name="testMethod"/> + <element name="customize2" optional="true"/> + <sequential> + <condition else="-testclass @{testClass}" property="test.class.or.method" value="-methods @{testClass}.@{testMethod}"> + <isset property="test.method"/> + </condition> + <condition else="-suitename Fees_Managment_System -testname @{testClass} ${test.class.or.method}" property="testng.cmd.args" value="@{testClass}"> + <matches pattern=".*\.xml" string="@{testClass}"/> + </condition> + <delete dir="${build.test.results.dir}" quiet="true"/> + <mkdir dir="${build.test.results.dir}"/> + <j2seproject3:debug classname="org.testng.TestNG" classpath="${debug.test.classpath}"> + <customizeDebuggee> + <customize2/> + <jvmarg value="-ea"/> + <arg line="${testng.debug.mode}"/> + <arg line="-d ${build.test.results.dir}"/> + <arg line="-listener org.testng.reporters.VerboseReporter"/> + <arg line="${testng.cmd.args}"/> + </customizeDebuggee> + </j2seproject3:debug> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-testng-debug" if="${testng.available}" name="-init-macrodef-testng-debug-impl"> + <macrodef name="testng-debug-impl" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${main.class}" name="testClass"/> + <attribute default="" name="testMethod"/> + <element implicit="true" name="customize2" optional="true"/> + <sequential> + <j2seproject3:testng-debug testClass="@{testClass}" testMethod="@{testMethod}"> + <customize2/> + </j2seproject3:testng-debug> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-junit-debug-impl" if="${junit.available}" name="-init-macrodef-test-debug-junit"> + <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <attribute default="${main.class}" name="testClass"/> + <attribute default="" name="testMethod"/> + <sequential> + <j2seproject3:test-debug-impl excludes="@{excludes}" includes="@{includes}" testincludes="@{testincludes}" testmethods="@{testmethods}"> + <customizeDebuggee> + <jvmarg line="${run.jvmargs}"/> + <jvmarg line="${run.jvmargs.ide}"/> + </customizeDebuggee> + </j2seproject3:test-debug-impl> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-testng-debug-impl" if="${testng.available}" name="-init-macrodef-test-debug-testng"> + <macrodef name="test-debug" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${includes}" name="includes"/> + <attribute default="${excludes}" name="excludes"/> + <attribute default="**" name="testincludes"/> + <attribute default="" name="testmethods"/> + <attribute default="${main.class}" name="testClass"/> + <attribute default="" name="testMethod"/> + <sequential> + <j2seproject3:testng-debug-impl testClass="@{testClass}" testMethod="@{testMethod}"> + <customize2> + <syspropertyset> + <propertyref prefix="test-sys-prop."/> + <mapper from="test-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + </customize2> + </j2seproject3:testng-debug-impl> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-test-debug-junit,-init-macrodef-test-debug-testng" name="-init-macrodef-test-debug"/> + <!-- + pre NB7.2 profiling section; consider it deprecated + --> + <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile, -profile-init-check" if="profiler.info.jvmargs.agent" name="profile-init"/> + <target if="profiler.info.jvmargs.agent" name="-profile-pre-init"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target if="profiler.info.jvmargs.agent" name="-profile-post-init"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target if="profiler.info.jvmargs.agent" name="-profile-init-macrodef-profile"> + <macrodef name="resolve"> + <attribute name="name"/> + <attribute name="value"/> + <sequential> + <property name="@{name}" value="${env.@{value}}"/> + </sequential> + </macrodef> + <macrodef name="profile"> + <attribute default="${main.class}" name="classname"/> + <element name="customize" optional="true"/> + <sequential> + <property environment="env"/> + <resolve name="profiler.current.path" value="${profiler.info.pathvar}"/> + <java classname="@{classname}" dir="${profiler.info.dir}" failonerror="${java.failonerror}" fork="true" jvm="${profiler.info.jvm}"> + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> + <jvmarg value="${profiler.info.jvmargs.agent}"/> + <jvmarg line="${profiler.info.jvmargs}"/> + <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/> + <arg line="${application.args}"/> + <classpath> + <path path="${run.classpath}"/> + </classpath> + <syspropertyset> + <propertyref prefix="run-sys-prop."/> + <mapper from="run-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <customize/> + </java> + </sequential> + </macrodef> + </target> + <target depends="-profile-pre-init, init, -profile-post-init, -profile-init-macrodef-profile" if="profiler.info.jvmargs.agent" name="-profile-init-check"> + <fail unless="profiler.info.jvm">Must set JVM to use for profiling in profiler.info.jvm</fail> + <fail unless="profiler.info.jvmargs.agent">Must set profiler agent JVM arguments in profiler.info.jvmargs.agent</fail> + </target> + <!-- + end of pre NB7.2 profiling section + --> + <target depends="-init-debug-args" name="-init-macrodef-nbjpda"> + <macrodef name="nbjpdastart" uri="http://www.netbeans.org/ns/j2se-project/1"> + <attribute default="${main.class}" name="name"/> + <attribute default="${debug.modulepath}" name="modulepath"/> + <attribute default="${debug.classpath}" name="classpath"/> + <attribute default="" name="stopclassname"/> + <sequential> + <nbjpdastart addressproperty="jpda.address" name="@{name}" stopclassname="@{stopclassname}" transport="${debug-transport}"> + <modulepath> + <path path="@{modulepath}"/> + </modulepath> + <classpath> + <path path="@{classpath}"/> + </classpath> + </nbjpdastart> + </sequential> + </macrodef> + <macrodef name="nbjpdareload" uri="http://www.netbeans.org/ns/j2se-project/1"> + <attribute default="${build.classes.dir}" name="dir"/> + <sequential> + <nbjpdareload> + <fileset dir="@{dir}" includes="${fix.classes}"> + <include name="${fix.includes}*.class"/> + </fileset> + </nbjpdareload> + </sequential> + </macrodef> + </target> + <target name="-init-debug-args"> + <condition else="dt_socket" property="debug-transport-by-os" value="dt_shmem"> + <os family="windows"/> + </condition> + <condition else="${debug-transport-by-os}" property="debug-transport" value="${debug.transport}"> + <isset property="debug.transport"/> + </condition> + </target> + <target depends="-init-debug-args" name="-init-macrodef-debug"> + <macrodef name="debug" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${module.name}" name="modulename"/> + <attribute default="${main.class}" name="classname"/> + <attribute default="${debug.modulepath}" name="modulepath"/> + <attribute default="${debug.classpath}" name="classpath"/> + <element name="customizeDebuggee" optional="true"/> + <sequential> + <j2seproject1:java classname="@{classname}" classpath="@{classpath}" modulename="@{modulename}" modulepath="@{modulepath}"> + <customize> + <jvmarg value="-agentlib:jdwp=transport=${debug-transport},address=${jpda.address}"/> + <customizeDebuggee/> + </customize> + </j2seproject1:java> + </sequential> + </macrodef> + </target> + <target depends="-init-source-module-properties" if="named.module.internal" name="-init-macrodef-java-with-module"> + <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1"> + <attribute default="${module.name}" name="modulename"/> + <attribute default="${main.class}" name="classname"/> + <attribute default="${run.modulepath}" name="modulepath"/> + <attribute default="${run.upgrademodulepath}" name="upgrademodulepath"/> + <attribute default="${run.classpath}" name="classpath"/> + <attribute default="jvm" name="jvm"/> + <element name="customize" optional="true"/> + <sequential> + <java classname="@{classname}" dir="${work.dir}" failonerror="${java.failonerror}" fork="true" module="@{modulename}"> + <classpath> + <path path="@{classpath}"/> + </classpath> + <modulepath> + <pathelement path="@{modulepath}"/> + <pathelement location="${module.build.classes.dir}"/> + </modulepath> + <upgrademodulepath> + <path path="@{upgrademodulepath}"/> + </upgrademodulepath> + <jvmarg value="-Dfile.encoding=${runtime.encoding}"/> + <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/> + <jvmarg line="${run.jvmargs}"/> + <jvmarg line="${run.jvmargs.ide}"/> + <syspropertyset> + <propertyref prefix="run-sys-prop."/> + <mapper from="run-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <customize/> + </java> + </sequential> + </macrodef> + </target> + <target depends="-init-source-module-properties" if="unnamed.module.internal" name="-init-macrodef-java-with-unnamed-module"> + <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1"> + <attribute default="" name="modulename"/> + <attribute default="${main.class}" name="classname"/> + <attribute default="${run.modulepath}" name="modulepath"/> + <attribute default="${run.upgrademodulepath}" name="upgrademodulepath"/> + <attribute default="${run.classpath}" name="classpath"/> + <attribute default="jvm" name="jvm"/> + <element name="customize" optional="true"/> + <sequential> + <java classname="@{classname}" dir="${work.dir}" failonerror="${java.failonerror}" fork="true"> + <classpath> + <path path="@{classpath}"/> + </classpath> + <modulepath> + <path path="@{modulepath}"/> + </modulepath> + <upgrademodulepath> + <path path="@{upgrademodulepath}"/> + </upgrademodulepath> + <jvmarg value="-Dfile.encoding=${runtime.encoding}"/> + <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/> + <jvmarg line="${run.jvmargs}"/> + <jvmarg line="${run.jvmargs.ide}"/> + <syspropertyset> + <propertyref prefix="run-sys-prop."/> + <mapper from="run-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <customize/> + </java> + </sequential> + </macrodef> + </target> + <target depends="-init-source-module-properties" name="-init-macrodef-java-without-module" unless="modules.supported.internal"> + <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1"> + <attribute default="" name="modulename"/> + <attribute default="${main.class}" name="classname"/> + <attribute default="" name="modulepath"/> + <attribute default="${run.classpath}" name="classpath"/> + <attribute default="jvm" name="jvm"/> + <element name="customize" optional="true"/> + <sequential> + <java classname="@{classname}" dir="${work.dir}" failonerror="${java.failonerror}" fork="true"> + <jvmarg line="${endorsed.classpath.cmd.line.arg}"/> + <jvmarg value="-Dfile.encoding=${runtime.encoding}"/> + <redirector errorencoding="${runtime.encoding}" inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/> + <jvmarg line="${run.jvmargs}"/> + <jvmarg line="${run.jvmargs.ide}"/> + <classpath> + <path path="@{classpath}"/> + </classpath> + <syspropertyset> + <propertyref prefix="run-sys-prop."/> + <mapper from="run-sys-prop.*" to="*" type="glob"/> + </syspropertyset> + <customize/> + </java> + </sequential> + </macrodef> + </target> + <target depends="-init-macrodef-java-with-module, -init-macrodef-java-with-unnamed-module, -init-macrodef-java-without-module" name="-init-macrodef-java"/> + <target name="-init-macrodef-copylibs"> + <macrodef name="copylibs" uri="http://www.netbeans.org/ns/j2se-project/3"> + <attribute default="${manifest.file}" name="manifest"/> + <element name="customize" optional="true"/> + <sequential> + <property location="${build.classes.dir}" name="build.classes.dir.resolved"/> + <pathconvert property="run.classpath.without.build.classes.dir"> + <path path="${run.classpath}"/> + <map from="${build.classes.dir.resolved}" to=""/> + </pathconvert> + <pathconvert pathsep=" " property="jar.classpath"> + <path path="${run.classpath.without.build.classes.dir}"/> + <chainedmapper> + <flattenmapper/> + <filtermapper> + <replacestring from=" " to="%20"/> + </filtermapper> + <globmapper from="*" to="lib/*"/> + </chainedmapper> + </pathconvert> + <taskdef classname="org.netbeans.modules.java.j2seproject.copylibstask.CopyLibs" classpath="${libs.CopyLibs.classpath}" name="copylibs"/> + <copylibs compress="${jar.compress}" excludeFromCopy="${copylibs.excludes}" index="${jar.index}" indexMetaInf="${jar.index.metainf}" jarfile="${dist.jar}" manifest="@{manifest}" manifestencoding="UTF-8" rebase="${copylibs.rebase}" runtimeclasspath="${run.classpath.without.build.classes.dir}"> + <fileset dir="${build.classes.dir}" excludes="${dist.archive.excludes}"/> + <manifest> + <attribute name="Class-Path" value="${jar.classpath}"/> + <customize/> + </manifest> + </copylibs> + </sequential> + </macrodef> + </target> + <target name="-init-presetdef-jar"> + <presetdef name="jar" uri="http://www.netbeans.org/ns/j2se-project/1"> + <jar compress="${jar.compress}" index="${jar.index}" jarfile="${dist.jar}" manifestencoding="UTF-8"> + <j2seproject1:fileset dir="${build.classes.dir}" excludes="${dist.archive.excludes}"/> + </jar> + </presetdef> + </target> + <target name="-init-ap-cmdline-properties"> + <property name="annotation.processing.enabled" value="true"/> + <property name="annotation.processing.processors.list" value=""/> + <property name="annotation.processing.processor.options" value=""/> + <property name="annotation.processing.run.all.processors" value="true"/> + <property name="javac.processorpath" value="${javac.classpath}"/> + <property name="javac.test.processorpath" value="${javac.test.classpath}"/> + <condition property="ap.supported.internal" value="true"> + <not> + <matches pattern="1\.[0-5](\..*)?" string="${javac.source}"/> + </not> + </condition> + </target> + <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" name="-init-ap-cmdline-supported"> + <condition else="" property="ap.processors.internal" value="-processor ${annotation.processing.processors.list}"> + <isfalse value="${annotation.processing.run.all.processors}"/> + </condition> + <condition else="" property="ap.proc.none.internal" value="-proc:none"> + <isfalse value="${annotation.processing.enabled}"/> + </condition> + </target> + <target depends="-init-ap-cmdline-properties,-init-ap-cmdline-supported" name="-init-ap-cmdline"> + <property name="ap.cmd.line.internal" value=""/> + </target> + <target depends="-pre-init,-init-private,-init-user,-init-project,-do-init,-post-init,-init-check,-init-macrodef-property,-init-macrodef-javac,-init-macrodef-test,-init-macrodef-test-debug,-init-macrodef-nbjpda,-init-macrodef-debug,-init-macrodef-java,-init-presetdef-jar,-init-ap-cmdline" name="init"/> + <!-- + =================== + COMPILATION SECTION + =================== + --> + <target name="-deps-jar-init" unless="built-jar.properties"> + <property location="${build.dir}/built-jar.properties" name="built-jar.properties"/> + <delete file="${built-jar.properties}" quiet="true"/> + </target> + <target if="already.built.jar.${basedir}" name="-warn-already-built-jar"> + <echo level="warn" message="Cycle detected: Fees_Managment_System was already built"/> + </target> + <target depends="init,-deps-jar-init" name="deps-jar" unless="no.deps"> + <mkdir dir="${build.dir}"/> + <touch file="${built-jar.properties}" verbose="false"/> + <property file="${built-jar.properties}" prefix="already.built.jar."/> + <antcall target="-warn-already-built-jar"/> + <propertyfile file="${built-jar.properties}"> + <entry key="${basedir}" value=""/> + </propertyfile> + </target> + <target depends="init,-check-automatic-build,-clean-after-automatic-build" name="-verify-automatic-build"/> + <target depends="init" name="-check-automatic-build"> + <available file="${build.classes.dir}/.netbeans_automatic_build" property="netbeans.automatic.build"/> + </target> + <target depends="init" if="netbeans.automatic.build" name="-clean-after-automatic-build"> + <antcall target="clean"> + <param name="no.dependencies" value="true"/> + </antcall> + </target> + <target depends="init,deps-jar" name="-pre-pre-compile"> + <mkdir dir="${build.classes.dir}"/> + </target> + <target name="-pre-compile"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target if="do.depend.true" name="-compile-depend"> + <pathconvert property="build.generated.subdirs"> + <dirset dir="${build.generated.sources.dir}" erroronmissingdir="false"> + <include name="*"/> + </dirset> + </pathconvert> + <j2seproject3:depend srcdir="${src.dir}:${build.generated.subdirs}"/> + </target> + <target depends="init,deps-jar,-pre-pre-compile,-pre-compile, -copy-persistence-xml,-compile-depend" if="have.sources" name="-do-compile"> + <j2seproject3:javac gensrcdir="${build.generated.sources.dir}"/> + <copy todir="${build.classes.dir}"> + <fileset dir="${src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/> + </copy> + </target> + <target if="has.persistence.xml" name="-copy-persistence-xml"> + <mkdir dir="${build.classes.dir}/META-INF"/> + <copy todir="${build.classes.dir}/META-INF"> + <fileset dir="${meta.inf.dir}" includes="persistence.xml orm.xml"/> + </copy> + </target> + <target name="-post-compile"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile,-do-compile,-post-compile" description="Compile project." name="compile"/> + <target name="-pre-compile-single"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single"> + <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail> + <j2seproject3:force-recompile/> + <j2seproject3:javac excludes="" gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}, module-info.java" sourcepath="${src.dir}"/> + </target> + <target name="-post-compile-single"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,deps-jar,-verify-automatic-build,-pre-pre-compile,-pre-compile-single,-do-compile-single,-post-compile-single" name="compile-single"/> + <!-- + ==================== + JAR BUILDING SECTION + ==================== + --> + <target depends="init" name="-pre-pre-jar"> + <dirname file="${dist.jar}" property="dist.jar.dir"/> + <mkdir dir="${dist.jar.dir}"/> + </target> + <target name="-pre-jar"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,compile" name="-check-module-main-class"> + <pathconvert property="main.class.file"> + <string value="${main.class}"/> + <unpackagemapper from="*" to="*.class"/> + </pathconvert> + <condition property="do.module.main.class"> + <and> + <isset property="main.class.available"/> + <available file="${build.classes.dir}/module-info.class"/> + <available file="${build.classes.dir}/${main.class.file}"/> + <isset property="libs.CopyLibs.classpath"/> + <available classname="org.netbeans.modules.java.j2seproject.moduletask.ModuleMainClass" classpath="${libs.CopyLibs.classpath}"/> + </and> + </condition> + </target> + <target depends="-check-module-main-class" if="do.module.main.class" name="-set-module-main-class"> + <taskdef classname="org.netbeans.modules.java.j2seproject.moduletask.ModuleMainClass" classpath="${libs.CopyLibs.classpath}" name="modulemainclass"/> + <modulemainclass failonerror="false" mainclass="${main.class}" moduleinfo="${build.classes.dir}/module-info.class"/> + </target> + <target depends="init" if="do.archive" name="-do-jar-create-manifest" unless="manifest.available"> + <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/> + <touch file="${tmp.manifest.file}" verbose="false"/> + </target> + <target depends="init" if="do.archive+manifest.available" name="-do-jar-copy-manifest"> + <tempfile deleteonexit="true" destdir="${build.dir}" property="tmp.manifest.file"/> + <copy encoding="${manifest.encoding}" file="${manifest.file}" outputencoding="UTF-8" tofile="${tmp.manifest.file}"/> + </target> + <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+main.class.available" name="-do-jar-set-mainclass"> + <manifest encoding="UTF-8" file="${tmp.manifest.file}" mode="update"> + <attribute name="Main-Class" value="${main.class}"/> + </manifest> + </target> + <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+profile.available" name="-do-jar-set-profile"> + <manifest encoding="UTF-8" file="${tmp.manifest.file}" mode="update"> + <attribute name="Profile" value="${javac.profile}"/> + </manifest> + </target> + <target depends="init,-do-jar-create-manifest,-do-jar-copy-manifest" if="do.archive+splashscreen.available" name="-do-jar-set-splashscreen"> + <basename file="${application.splash}" property="splashscreen.basename"/> + <mkdir dir="${build.classes.dir}/META-INF"/> + <copy failonerror="false" file="${application.splash}" todir="${build.classes.dir}/META-INF"/> + <manifest encoding="UTF-8" file="${tmp.manifest.file}" mode="update"> + <attribute name="SplashScreen-Image" value="META-INF/${splashscreen.basename}"/> + </manifest> + </target> + <target depends="init,compile" name="-check-do-mkdist"> + <condition property="do.mkdist"> + <and> + <isset property="do.archive"/> + <isset property="libs.CopyLibs.classpath"/> + <not> + <istrue value="${mkdist.disabled}"/> + </not> + <not> + <available file="${build.classes.dir}/module-info.class"/> + </not> + </and> + </condition> + </target> + <target depends="init,-init-macrodef-copylibs,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-check-do-mkdist" if="do.mkdist" name="-do-jar-copylibs"> + <j2seproject3:copylibs manifest="${tmp.manifest.file}"/> + <echo level="info">To run this application from the command line without Ant, try:</echo> + <property location="${dist.jar}" name="dist.jar.resolved"/> + <echo level="info">java -jar "${dist.jar.resolved}"</echo> + </target> + <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-check-do-mkdist" if="do.archive" name="-do-jar-jar" unless="do.mkdist"> + <j2seproject1:jar manifest="${tmp.manifest.file}"/> + <property location="${build.classes.dir}" name="build.classes.dir.resolved"/> + <property location="${dist.jar}" name="dist.jar.resolved"/> + <condition else="${dist.jar.resolved}" property="jar.usage.message.class.path.replacement" value=""> + <isset property="named.module.internal"/> + </condition> + <pathconvert property="run.classpath.with.dist.jar"> + <path path="${run.classpath}"/> + <map from="${build.classes.dir.resolved}" to="${jar.usage.message.class.path.replacement}"/> + </pathconvert> + <pathconvert property="run.modulepath.with.dist.jar"> + <path location="${dist.jar.resolved}"/> + <path path="${run.modulepath}"/> + <map from="${build.classes.dir.resolved}" to="${dist.jar.resolved}"/> + </pathconvert> + <condition else="${run.modulepath}" property="jar.usage.message.run.modulepath.with.dist.jar" value="${run.modulepath.with.dist.jar}"> + <isset property="named.module.internal"/> + </condition> + <condition else="" property="jar.usage.message.module.path" value=" -p ${jar.usage.message.run.modulepath.with.dist.jar}"> + <and> + <isset property="modules.supported.internal"/> + <length length="0" string="${jar.usage.message.run.modulepath.with.dist.jar}" when="greater"/> + </and> + </condition> + <condition else="" property="jar.usage.message.class.path" value=" -cp ${run.classpath.with.dist.jar}"> + <length length="0" string="${run.classpath.with.dist.jar}" when="greater"/> + </condition> + <condition else="/${main.class}" property="jar.usage.message.main.class.class.selector" value=""> + <isset property="do.module.main.class"/> + </condition> + <condition else=" ${main.class}" property="jar.usage.message.main.class" value=" -m ${module.name}${jar.usage.message.main.class.class.selector}"> + <isset property="named.module.internal"/> + </condition> + <condition else="" property="jar.usage.message" value="To run this application from the command line without Ant, try:${line.separator}${platform.java}${jar.usage.message.module.path}${jar.usage.message.class.path}${jar.usage.message.main.class}"> + <isset property="main.class.available"/> + </condition> + <condition else="debug" property="jar.usage.level" value="info"> + <isset property="main.class.available"/> + </condition> + <echo level="${jar.usage.level}" message="${jar.usage.message}"/> + </target> + <target depends="-do-jar-copylibs" if="do.archive" name="-do-jar-delete-manifest"> + <delete> + <fileset file="${tmp.manifest.file}"/> + </delete> + </target> + <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-do-jar-jar,-do-jar-delete-manifest" name="-do-jar-without-libraries"/> + <target depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen,-do-jar-copylibs,-do-jar-delete-manifest" name="-do-jar-with-libraries"/> + <target name="-post-jar"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,compile,-pre-jar,-set-module-main-class,-do-jar-without-libraries,-do-jar-with-libraries,-post-jar" name="-do-jar"/> + <target depends="init,compile,-pre-jar,-do-jar,-post-jar,deploy" description="Build JAR." name="jar"/> + <!-- + ================= + DEPLOY SECTION + ================= + --> + <target name="-pre-deploy"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init" name="-check-jlink"> + <condition property="do.jlink.internal"> + <and> + <istrue value="${do.jlink}"/> + <isset property="do.archive"/> + <isset property="named.module.internal"/> + </and> + </condition> + </target> + <target depends="init,-do-jar,-post-jar,-pre-deploy,-check-jlink" if="do.jlink.internal" name="-do-deploy"> + <delete dir="${dist.jlink.dir}" failonerror="false" quiet="true"/> + <property name="jlink.launcher.name" value="${application.title}"/> + <condition else="${module.name}" property="jlink.add.modules" value="${module.name},${jlink.additionalmodules}"> + <and> + <isset property="jlink.additionalmodules"/> + <length length="0" string="${jlink.additionalmodules}" when="greater"/> + </and> + </condition> + <condition property="jlink.do.strip.internal"> + <and> + <isset property="jlink.strip"/> + <istrue value="${jlink.strip}"/> + </and> + </condition> + <condition property="jlink.do.additionalparam.internal"> + <and> + <isset property="jlink.additionalparam"/> + <length length="0" string="${jlink.additionalparam}" when="greater"/> + </and> + </condition> + <condition property="jlink.do.launcher.internal"> + <and> + <istrue value="${jlink.launcher}"/> + <isset property="main.class.available"/> + </and> + </condition> + <property name="platform.jlink" value="${jdk.home}/bin/jlink"/> + <property name="jlink.systemmodules.internal" value="${jdk.home}/jmods"/> + <exec executable="${platform.jlink}"> + <arg value="--module-path"/> + <arg path="${jlink.systemmodules.internal}:${run.modulepath}:${dist.jar}"/> + <arg value="--add-modules"/> + <arg value="${jlink.add.modules}"/> + <arg if:set="jlink.do.strip.internal" value="--strip-debug"/> + <arg if:set="jlink.do.launcher.internal" value="--launcher"/> + <arg if:set="jlink.do.launcher.internal" value="${jlink.launcher.name}=${module.name}/${main.class}"/> + <arg if:set="jlink.do.additionalparam.internal" line="${jlink.additionalparam}"/> + <arg value="--output"/> + <arg value="${dist.jlink.output}"/> + </exec> + </target> + <target name="-post-deploy"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="-do-jar,-post-jar,-pre-deploy,-do-deploy,-post-deploy" name="deploy"/> + <!-- + ================= + EXECUTION SECTION + ================= + --> + <target depends="init,compile" description="Run a main class." name="run"> + <j2seproject1:java> + <customize> + <arg line="${application.args}"/> + </customize> + </j2seproject1:java> + </target> + <target name="-do-not-recompile"> + <property name="javac.includes.binary" value=""/> + </target> + <target depends="init,compile-single" name="run-single"> + <fail unless="run.class">Must select one file in the IDE or set run.class</fail> + <j2seproject1:java classname="${run.class}"/> + </target> + <target depends="init,compile-test-single" name="run-test-with-main"> + <fail unless="run.class">Must select one file in the IDE or set run.class</fail> + <j2seproject1:java classname="${run.class}" classpath="${run.test.classpath}"/> + </target> + <!-- + ================= + DEBUGGING SECTION + ================= + --> + <target depends="init" if="netbeans.home" name="-debug-start-debugger"> + <j2seproject1:nbjpdastart name="${debug.class}"/> + </target> + <target depends="init" if="netbeans.home" name="-debug-start-debugger-main-test"> + <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${debug.class}"/> + </target> + <target depends="init,compile" name="-debug-start-debuggee"> + <j2seproject3:debug> + <customizeDebuggee> + <arg line="${application.args}"/> + </customizeDebuggee> + </j2seproject3:debug> + </target> + <target depends="init,compile,-debug-start-debugger,-debug-start-debuggee" description="Debug project in IDE." if="netbeans.home" name="debug"/> + <target depends="init" if="netbeans.home" name="-debug-start-debugger-stepinto"> + <j2seproject1:nbjpdastart stopclassname="${main.class}"/> + </target> + <target depends="init,compile,-debug-start-debugger-stepinto,-debug-start-debuggee" if="netbeans.home" name="debug-stepinto"/> + <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-single"> + <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail> + <j2seproject3:debug classname="${debug.class}"/> + </target> + <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-single" if="netbeans.home" name="debug-single"/> + <target depends="init,compile-test-single" if="netbeans.home" name="-debug-start-debuggee-main-test"> + <fail unless="debug.class">Must select one file in the IDE or set debug.class</fail> + <j2seproject3:debug classname="${debug.class}" classpath="${debug.test.classpath}"/> + </target> + <target depends="init,compile-test-single,-debug-start-debugger-main-test,-debug-start-debuggee-main-test" if="netbeans.home" name="debug-test-with-main"/> + <target depends="init" name="-pre-debug-fix"> + <fail unless="fix.includes">Must set fix.includes</fail> + <property name="javac.includes" value="${fix.includes}.java"/> + </target> + <target depends="init,-pre-debug-fix,compile-single" if="netbeans.home" name="-do-debug-fix"> + <j2seproject1:nbjpdareload/> + </target> + <target depends="init,-pre-debug-fix,-do-debug-fix" if="netbeans.home" name="debug-fix"/> + <!-- + ================= + PROFILING SECTION + ================= + --> + <!-- + pre NB7.2 profiler integration + --> + <target depends="profile-init,compile" description="Profile a project in the IDE." if="profiler.info.jvmargs.agent" name="-profile-pre72"> + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail> + <nbprofiledirect> + <classpath> + <path path="${run.classpath}"/> + </classpath> + </nbprofiledirect> + <profile/> + </target> + <target depends="profile-init,compile-single" description="Profile a selected class in the IDE." if="profiler.info.jvmargs.agent" name="-profile-single-pre72"> + <fail unless="profile.class">Must select one file in the IDE or set profile.class</fail> + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail> + <nbprofiledirect> + <classpath> + <path path="${run.classpath}"/> + </classpath> + </nbprofiledirect> + <profile classname="${profile.class}"/> + </target> + <target depends="profile-init,compile-single" if="profiler.info.jvmargs.agent" name="-profile-applet-pre72"> + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail> + <nbprofiledirect> + <classpath> + <path path="${run.classpath}"/> + </classpath> + </nbprofiledirect> + <profile classname="sun.applet.AppletViewer"> + <customize> + <arg value="${applet.url}"/> + </customize> + </profile> + </target> + <target depends="-init-macrodef-junit,profile-init,compile-test-single" if="profiler.info.jvmargs.agent" name="-profile-test-single-pre72"> + <fail unless="netbeans.home">This target only works when run from inside the NetBeans IDE.</fail> + <nbprofiledirect> + <classpath> + <path path="${run.test.classpath}"/> + </classpath> + </nbprofiledirect> + <j2seproject3:junit excludes="${excludes}" includes="${includes}" testincludes="${profile.class}" testmethods=""> + <customize> + <jvmarg value="-agentlib:jdwp=transport=${debug-transport},address=${jpda.address}"/> + <env key="${profiler.info.pathvar}" path="${profiler.info.agentpath}:${profiler.current.path}"/> + <jvmarg value="${profiler.info.jvmargs.agent}"/> + <jvmarg line="${profiler.info.jvmargs}"/> + <classpath> + <path path="${run.test.classpath}"/> + </classpath> + </customize> + </j2seproject3:junit> + </target> + <!-- + end of pre NB72 profiling section + --> + <target if="netbeans.home" name="-profile-check"> + <condition property="profiler.configured"> + <or> + <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-agentpath:"/> + <contains casesensitive="true" string="${run.jvmargs.ide}" substring="-javaagent:"/> + </or> + </condition> + </target> + <target depends="-profile-check,-profile-pre72" description="Profile a project in the IDE." if="profiler.configured" name="profile" unless="profiler.info.jvmargs.agent"> + <startprofiler/> + <antcall target="run"/> + </target> + <target depends="-profile-check,-profile-single-pre72" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-single" unless="profiler.info.jvmargs.agent"> + <fail unless="run.class">Must select one file in the IDE or set run.class</fail> + <startprofiler/> + <antcall target="run-single"/> + </target> + <target depends="-profile-test-single-pre72" description="Profile a selected test in the IDE." name="profile-test-single"/> + <target depends="-profile-check" description="Profile a selected test in the IDE." if="profiler.configured" name="profile-test" unless="profiler.info.jvmargs"> + <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail> + <startprofiler/> + <antcall target="test-single"/> + </target> + <target depends="-profile-check" description="Profile a selected class in the IDE." if="profiler.configured" name="profile-test-with-main"> + <fail unless="run.class">Must select one file in the IDE or set run.class</fail> + <startprofiler/> + <antcall target="run-test-with-main"/> + </target> + <target depends="-profile-check,-profile-applet-pre72" if="profiler.configured" name="profile-applet" unless="profiler.info.jvmargs.agent"> + <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail> + <startprofiler/> + <antcall target="run-applet"/> + </target> + <!-- + =============== + JAVADOC SECTION + =============== + --> + <target depends="init" if="have.sources" name="-javadoc-build"> + <mkdir dir="${dist.javadoc.dir}"/> + <condition else="" property="javadoc.endorsed.classpath.cmd.line.arg" value="-J${endorsed.classpath.cmd.line.arg}"> + <and> + <isset property="endorsed.classpath.cmd.line.arg"/> + <not> + <equals arg1="${endorsed.classpath.cmd.line.arg}" arg2=""/> + </not> + </and> + </condition> + <condition else="" property="bug5101868workaround" value="*.java"> + <matches pattern="1\.[56](\..*)?" string="${java.version}"/> + </condition> + <condition else="" property="javadoc.html5.cmd.line.arg" value="-html5"> + <and> + <isset property="javadoc.html5"/> + <available file="${jdk.home}${file.separator}lib${file.separator}jrt-fs.jar"/> + </and> + </condition> + <javadoc additionalparam="-J-Dfile.encoding=${file.encoding} ${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" destdir="${dist.javadoc.dir}" docencoding="UTF-8" encoding="${javadoc.encoding.used}" failonerror="true" noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" notree="${javadoc.notree}" private="${javadoc.private}" source="${javac.source}" splitindex="${javadoc.splitindex}" use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" windowtitle="${javadoc.windowtitle}"> + <classpath> + <path path="${javac.classpath}"/> + </classpath> + <fileset dir="${src.dir}" excludes="${bug5101868workaround},${excludes}" includes="${includes}"> + <filename name="**/*.java"/> + </fileset> + <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false"> + <include name="**/*.java"/> + <exclude name="*.java"/> + </fileset> + <arg line="${javadoc.endorsed.classpath.cmd.line.arg}"/> + <arg line="${javadoc.html5.cmd.line.arg}"/> + </javadoc> + <copy todir="${dist.javadoc.dir}"> + <fileset dir="${src.dir}" excludes="${excludes}" includes="${includes}"> + <filename name="**/doc-files/**"/> + </fileset> + <fileset dir="${build.generated.sources.dir}" erroronmissingdir="false"> + <include name="**/doc-files/**"/> + </fileset> + </copy> + </target> + <target depends="init,-javadoc-build" if="netbeans.home" name="-javadoc-browse" unless="no.javadoc.preview"> + <nbbrowse file="${dist.javadoc.dir}/index.html"/> + </target> + <target depends="init,-javadoc-build,-javadoc-browse" description="Build Javadoc." name="javadoc"/> + <!-- + ========================= + TEST COMPILATION SECTION + ========================= + --> + <target depends="init,compile" if="have.tests" name="-pre-pre-compile-test"> + <mkdir dir="${build.test.classes.dir}"/> + </target> + <target name="-pre-compile-test"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="-init-source-module-properties" if="named.module.internal" name="-init-test-javac-module-properties-with-module"> + <j2seproject3:modulename property="test.module.name" sourcepath="${test.src.dir}"/> + <condition else="${empty.dir}" property="javac.test.sourcepath" value="${test.src.dir}"> + <and> + <isset property="test.module.name"/> + <length length="0" string="${test.module.name}" when="greater"/> + </and> + </condition> + <condition else="--patch-module ${module.name}=${test.src.dir} --add-reads ${module.name}=ALL-UNNAMED" property="javac.test.compilerargs" value="--add-reads ${test.module.name}=ALL-UNNAMED"> + <and> + <isset property="test.module.name"/> + <length length="0" string="${test.module.name}" when="greater"/> + </and> + </condition> + </target> + <target depends="-init-source-module-properties" if="named.module.internal" name="-init-test-run-module-properties"> + <condition else="${module.name}" property="run.test.addexport.source.module.internal" value="${test.module.name}"> + <and> + <isset property="test.module.name"/> + <length length="0" string="${test.module.name}" when="greater"/> + </and> + </condition> + <fileset dir="${build.test.classes.dir}" id="run.test.packages.internal" includes="**/*.class"/> + <property location="${build.test.classes.dir}" name="build.test.classes.dir.abs.internal"/> + <pathconvert pathsep=" " property="run.test.addexports.internal" refid="run.test.packages.internal"> + <chainedmapper> + <regexpmapper from="^(.*)\Q${file.separator}\E.*\.class$$" to="\1"/> + <filtermapper> + <uniqfilter/> + <replacestring from="${build.test.classes.dir.abs.internal}" to=""/> + </filtermapper> + <cutdirsmapper dirs="1"/> + <packagemapper from="*" to="--add-exports ${run.test.addexport.source.module.internal}/*=ALL-UNNAMED"/> + </chainedmapper> + </pathconvert> + <condition else="--patch-module ${module.name}=${build.test.classes.dir} --add-modules ${module.name} --add-reads ${module.name}=ALL-UNNAMED ${run.test.addexports.internal}" property="run.test.jvmargs" value="--add-modules ${test.module.name} --add-reads ${test.module.name}=ALL-UNNAMED ${run.test.addexports.internal}"> + <and> + <isset property="test.module.name"/> + <length length="0" string="${test.module.name}" when="greater"/> + </and> + </condition> + </target> + <target depends="-init-source-module-properties" name="-init-test-module-properties-without-module" unless="named.module.internal"> + <property name="javac.test.sourcepath" value="${empty.dir}"/> + <property name="javac.test.compilerargs" value=""/> + <property name="run.test.jvmargs" value=""/> + </target> + <target depends="-init-test-javac-module-properties-with-module,-init-test-module-properties-without-module" name="-init-test-module-properties"/> + <target if="do.depend.true" name="-compile-test-depend"> + <j2seproject3:depend classpath="${javac.test.classpath}" destdir="${build.test.classes.dir}" srcdir="${test.src.dir}"/> + </target> + <target depends="init,deps-jar,compile,-init-test-module-properties,-pre-pre-compile-test,-pre-compile-test,-compile-test-depend" if="have.tests" name="-do-compile-test"> + <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" modulepath="${javac.test.modulepath}" processorpath="${javac.test.processorpath}" sourcepath="${javac.test.sourcepath}" srcdir="${test.src.dir}"> + <customize> + <compilerarg line="${javac.test.compilerargs}"/> + </customize> + </j2seproject3:javac> + <copy todir="${build.test.classes.dir}"> + <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/> + </copy> + </target> + <target name="-post-compile-test"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test,-do-compile-test,-post-compile-test" name="compile-test"/> + <target name="-pre-compile-test-single"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,deps-jar,compile,-init-test-module-properties,-pre-pre-compile-test,-pre-compile-test-single" if="have.tests" name="-do-compile-test-single"> + <fail unless="javac.includes">Must select some files in the IDE or set javac.includes</fail> + <j2seproject3:force-recompile destdir="${build.test.classes.dir}"/> + <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" classpath="${javac.test.classpath}" debug="true" destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}, module-info.java" modulepath="${javac.test.modulepath}" processorpath="${javac.test.processorpath}" sourcepath="${test.src.dir}" srcdir="${test.src.dir}"> + <customize> + <compilerarg line="${javac.test.compilerargs}"/> + </customize> + </j2seproject3:javac> + <copy todir="${build.test.classes.dir}"> + <fileset dir="${test.src.dir}" excludes="${build.classes.excludes},${excludes}" includes="${includes}"/> + </copy> + </target> + <target name="-post-compile-test-single"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,compile,-pre-pre-compile-test,-pre-compile-test-single,-do-compile-test-single,-post-compile-test-single" name="compile-test-single"/> + <!-- + ======================= + TEST EXECUTION SECTION + ======================= + --> + <target depends="init" if="have.tests" name="-pre-test-run"> + <mkdir dir="${build.test.results.dir}"/> + </target> + <target depends="init,compile-test,-init-test-run-module-properties,-pre-test-run" if="have.tests" name="-do-test-run"> + <j2seproject3:test includes="${includes}" testincludes="**/*Test.java"/> + </target> + <target depends="init,compile-test,-pre-test-run,-do-test-run" if="have.tests" name="-post-test-run"> + <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail> + </target> + <target depends="init" if="have.tests" name="test-report"/> + <target depends="init" if="netbeans.home+have.tests" name="-test-browse"/> + <target depends="init,compile-test,-pre-test-run,-do-test-run,test-report,-post-test-run,-test-browse" description="Run unit tests." name="test"/> + <target depends="init" if="have.tests" name="-pre-test-run-single"> + <mkdir dir="${build.test.results.dir}"/> + </target> + <target depends="init,compile-test-single,-init-test-run-module-properties,-pre-test-run-single" if="have.tests" name="-do-test-run-single"> + <fail unless="test.includes">Must select some files in the IDE or set test.includes</fail> + <j2seproject3:test excludes="" includes="${test.includes}" testincludes="${test.includes}"/> + </target> + <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" if="have.tests" name="-post-test-run-single"> + <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail> + </target> + <target depends="init,compile-test-single,-init-test-run-module-properties,-pre-test-run-single,-do-test-run-single,-post-test-run-single" description="Run single unit test." name="test-single"/> + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-do-test-run-single-method"> + <fail unless="test.class">Must select some files in the IDE or set test.class</fail> + <fail unless="test.method">Must select some method in the IDE or set test.method</fail> + <j2seproject3:test excludes="" includes="${javac.includes}" testincludes="${test.class}" testmethods="${test.method}"/> + </target> + <target depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method" if="have.tests" name="-post-test-run-single-method"> + <fail if="tests.failed" unless="ignore.failing.tests">Some tests failed; see details above.</fail> + </target> + <target depends="init,compile-test-single,-init-test-run-module-properties,-pre-test-run-single,-do-test-run-single-method,-post-test-run-single-method" description="Run single unit test." name="test-single-method"/> + <!-- + ======================= + TEST DEBUGGING SECTION + ======================= + --> + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test"> + <fail unless="test.class">Must select one file in the IDE or set test.class</fail> + <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testincludes="${javac.includes}"/> + </target> + <target depends="init,compile-test-single,-pre-test-run-single" if="have.tests" name="-debug-start-debuggee-test-method"> + <fail unless="test.class">Must select one file in the IDE or set test.class</fail> + <fail unless="test.method">Must select some method in the IDE or set test.method</fail> + <j2seproject3:test-debug excludes="" includes="${javac.includes}" testClass="${test.class}" testMethod="${test.method}" testincludes="${test.class}" testmethods="${test.method}"/> + </target> + <target depends="init,compile-test" if="netbeans.home+have.tests" name="-debug-start-debugger-test"> + <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" name="${test.class}"/> + </target> + <target depends="init,compile-test-single,-init-test-run-module-properties,-debug-start-debugger-test,-debug-start-debuggee-test" name="debug-test"/> + <target depends="init,compile-test-single,-init-test-run-module-properties,-debug-start-debugger-test,-debug-start-debuggee-test-method" name="debug-test-method"/> + <target depends="debug-test-method" name="debug-single-method"/> + <target depends="init,-pre-debug-fix,compile-test-single" if="netbeans.home" name="-do-debug-fix-test"> + <j2seproject1:nbjpdareload dir="${build.test.classes.dir}"/> + </target> + <target depends="init,-pre-debug-fix,-do-debug-fix-test" if="netbeans.home" name="debug-fix-test"/> + <!-- + ========================= + APPLET EXECUTION SECTION + ========================= + --> + <target depends="init,compile-single" name="run-applet"> + <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail> + <j2seproject1:java classname="sun.applet.AppletViewer"> + <customize> + <arg value="${applet.url}"/> + </customize> + </j2seproject1:java> + </target> + <!-- + ========================= + APPLET DEBUGGING SECTION + ========================= + --> + <target depends="init,compile-single" if="netbeans.home" name="-debug-start-debuggee-applet"> + <fail unless="applet.url">Must select one file in the IDE or set applet.url</fail> + <j2seproject3:debug classname="sun.applet.AppletViewer"> + <customizeDebuggee> + <arg value="${applet.url}"/> + </customizeDebuggee> + </j2seproject3:debug> + </target> + <target depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-applet" if="netbeans.home" name="debug-applet"/> + <!-- + =============== + CLEANUP SECTION + =============== + --> + <target name="-deps-clean-init" unless="built-clean.properties"> + <property location="${build.dir}/built-clean.properties" name="built-clean.properties"/> + <delete file="${built-clean.properties}" quiet="true"/> + </target> + <target if="already.built.clean.${basedir}" name="-warn-already-built-clean"> + <echo level="warn" message="Cycle detected: Fees_Managment_System was already built"/> + </target> + <target depends="init,-deps-clean-init" name="deps-clean" unless="no.deps"> + <mkdir dir="${build.dir}"/> + <touch file="${built-clean.properties}" verbose="false"/> + <property file="${built-clean.properties}" prefix="already.built.clean."/> + <antcall target="-warn-already-built-clean"/> + <propertyfile file="${built-clean.properties}"> + <entry key="${basedir}" value=""/> + </propertyfile> + </target> + <target depends="init" name="-do-clean"> + <delete dir="${build.dir}"/> + <delete dir="${dist.jlink.output}"/> + <delete dir="${dist.dir}" followsymlinks="false" includeemptydirs="true"/> + </target> + <target name="-post-clean"> + <!-- Empty placeholder for easier customization. --> + <!-- You can override this target in the ../build.xml file. --> + </target> + <target depends="init,deps-clean,-do-clean,-post-clean" description="Clean build products." name="clean"/> + <target name="-check-call-dep"> + <property file="${call.built.properties}" prefix="already.built."/> + <condition property="should.call.dep"> + <and> + <not> + <isset property="already.built.${call.subproject}"/> + </not> + <available file="${call.script}"/> + </and> + </condition> + </target> + <target depends="-check-call-dep" if="should.call.dep" name="-maybe-call-dep"> + <ant antfile="${call.script}" inheritall="false" target="${call.target}"> + <propertyset> + <propertyref prefix="transfer."/> + <mapper from="transfer.*" to="*" type="glob"/> + </propertyset> + </ant> + </target> +</project> diff --git a/build/classes/genfiles.properties b/build/classes/genfiles.properties new file mode 100644 index 0000000..3fde964 --- /dev/null +++ b/build/classes/genfiles.properties @@ -0,0 +1,8 @@ +build.xml.data.CRC32=c22ef243 +build.xml.script.CRC32=d02eab33 +build.xml.stylesheet.CRC32=f85dc8f2@1.104.0.48 +# This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. +# Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. +nbproject/build-impl.xml.data.CRC32=c22ef243 +nbproject/build-impl.xml.script.CRC32=b72dbf07 +nbproject/build-impl.xml.stylesheet.CRC32=12e0a6c2@1.104.0.48 diff --git a/build/classes/project.properties b/build/classes/project.properties new file mode 100644 index 0000000..e6ca430 --- /dev/null +++ b/build/classes/project.properties @@ -0,0 +1,125 @@ +annotation.processing.enabled=true +annotation.processing.enabled.in.editor=false +annotation.processing.processors.list= +annotation.processing.run.all.processors=true +annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output +application.title=Fees_Managment_System +application.vendor=yash +build.classes.dir=${build.dir}/classes +build.classes.excludes=**/*.java,**/*.form +# This directory is removed when the project is cleaned: +build.dir=build +build.generated.dir=${build.dir}/generated +build.generated.sources.dir=${build.dir}/generated-sources +# Only compile against the classpath explicitly listed here: +build.sysclasspath=ignore +build.test.classes.dir=${build.dir}/test/classes +build.test.results.dir=${build.dir}/test/results +# Uncomment to specify the preferred debugger connection transport: +#debug.transport=dt_socket +debug.classpath=\ + ${run.classpath} +debug.modulepath=\ + ${run.modulepath} +debug.test.classpath=\ + ${run.test.classpath} +debug.test.modulepath=\ + ${run.test.modulepath} +# Files in build.classes.dir which should be excluded from distribution jar +dist.archive.excludes= +# This directory is removed when the project is cleaned: +dist.dir=dist +dist.jar=${dist.dir}/Fees_Managment_System.jar +dist.javadoc.dir=${dist.dir}/javadoc +dist.jlink.dir=${dist.dir}/jlink +dist.jlink.output=${dist.jlink.dir}/Fees_Managment_System +endorsed.classpath= +excludes= +file.reference.commons-collections4-4.4.jar=C:\\Users\\yash\\Downloads\\commons-collections4-4.4.jar +file.reference.jcalendar-1.4.jar=C:\\Users\\yash\\OneDrive\\Desktop\\jcalendar-1.4.jar +file.reference.mysql-connector-java-8.0.27.jar=C:\\Users\\yash\\Downloads\\mysql-connector-java-8.0.27\\mysql-connector-java-8.0.27.jar +file.reference.mysql-connector-java-8.0.27.jar-1=C:\\Users\\yash\\OneDrive\\Desktop\\java\\mysql-connector-java-8.0.27.jar +file.reference.poi-3.17.jar=C:\\Users\\yash\\Downloads\\poi-3.17.jar +file.reference.poi-examples-3.17.jar=C:\\Users\\yash\\Downloads\\poi-examples-3.17.jar +file.reference.poi-excelant-3.17.jar=C:\\Users\\yash\\Downloads\\poi-excelant-3.17.jar +file.reference.poi-ooxml-3.17.jar=C:\\Users\\yash\\Downloads\\poi-ooxml-3.17.jar +file.reference.poi-ooxml-schemas-3.17.jar=C:\\Users\\yash\\Downloads\\poi-ooxml-schemas-3.17.jar +file.reference.poi-poi=C:\\Users\\yash\\Downloads\\poi\\poi +file.reference.poi-scratchpad-3.17.jar=C:\\Users\\yash\\Downloads\\poi-scratchpad-3.17.jar +file.reference.xmlbeans-3.0.1.jar=C:\\Users\\yash\\Downloads\\xmlbeans-3.0.1.jar +includes=** +jar.compress=false +javac.classpath=\ + ${file.reference.jcalendar-1.4.jar}:\ + ${file.reference.mysql-connector-java-8.0.27.jar}:\ + ${libs.JAVADB_DRIVER_LABEL.classpath}:\ + ${file.reference.mysql-connector-java-8.0.27.jar-1}:\ + ${libs.absolutelayout.classpath}:\ + ${file.reference.poi-poi}:\ + ${file.reference.commons-collections4-4.4.jar}:\ + ${file.reference.poi-3.17.jar}:\ + ${file.reference.poi-examples-3.17.jar}:\ + ${file.reference.poi-excelant-3.17.jar}:\ + ${file.reference.poi-ooxml-3.17.jar}:\ + ${file.reference.poi-ooxml-schemas-3.17.jar}:\ + ${file.reference.poi-scratchpad-3.17.jar}:\ + ${file.reference.xmlbeans-3.0.1.jar} +# Space-separated list of extra javac options +javac.compilerargs= +javac.deprecation=false +javac.external.vm=true +javac.modulepath= +javac.processormodulepath= +javac.processorpath=\ + ${javac.classpath} +javac.source=19 +javac.target=19 +javac.test.classpath=\ + ${javac.classpath}:\ + ${build.classes.dir} +javac.test.modulepath=\ + ${javac.modulepath} +javac.test.processorpath=\ + ${javac.test.classpath} +javadoc.additionalparam= +javadoc.author=false +javadoc.encoding=${source.encoding} +javadoc.html5=false +javadoc.noindex=false +javadoc.nonavbar=false +javadoc.notree=false +javadoc.private=false +javadoc.reference.poi-poi=C:\\Users\\yash\\Downloads\\poi\\poi\\commons-collections4-4.4.jar +javadoc.splitindex=true +javadoc.use=true +javadoc.version=false +javadoc.windowtitle= +# The jlink additional root modules to resolve +jlink.additionalmodules= +# The jlink additional command line parameters +jlink.additionalparam= +jlink.launcher=true +jlink.launcher.name=Fees_Managment_System +main.class=fees_managment_syatem.Fees_Managment_Syatem +manifest.file=manifest.mf +meta.inf.dir=${src.dir}/META-INF +mkdist.disabled=false +platform.active=default_platform +run.classpath=\ + ${javac.classpath}:\ + ${build.classes.dir} +# Space-separated list of JVM arguments used when running the project. +# You may also define separate properties like run-sys-prop.name=value instead of -Dname=value. +# To set system properties for unit tests define test-sys-prop.name=value: +run.jvmargs= +run.modulepath=\ + ${javac.modulepath} +run.test.classpath=\ + ${javac.test.classpath}:\ + ${build.test.classes.dir} +run.test.modulepath=\ + ${javac.test.modulepath} +source.encoding=UTF-8 +source.reference.poi-poi=C:\\Users\\yash\\Downloads\\poi\\poi\\commons-collections4-4.4.jar +src.dir=src +test.src.dir=test diff --git a/build/classes/project.xml b/build/classes/project.xml new file mode 100644 index 0000000..1d96f1b --- /dev/null +++ b/build/classes/project.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xmlns="http://www.netbeans.org/ns/project/1"> + <type>org.netbeans.modules.java.j2seproject</type> + <configuration> + <data xmlns="http://www.netbeans.org/ns/j2se-project/3"> + <name>Fees_Managment_System</name> + <source-roots> + <root id="src.dir"/> + </source-roots> + <test-roots> + <root id="test.src.dir"/> + </test-roots> + </data> + </configuration> +</project> From 55903fc92ecc344f564588ddb4ef0f744572355c Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 11:07:24 +0530 Subject: [PATCH 09/20] Delete build/classes/t1 --- build/classes/t1 | 1 - 1 file changed, 1 deletion(-) delete mode 100644 build/classes/t1 diff --git a/build/classes/t1 b/build/classes/t1 deleted file mode 100644 index 8b13789..0000000 --- a/build/classes/t1 +++ /dev/null @@ -1 +0,0 @@ - From 3316c0d19a0889edf5c54764d0e86c807e64783e Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 11:09:04 +0530 Subject: [PATCH 10/20] Delete nbproject/t1 --- nbproject/t1 | 1 - 1 file changed, 1 deletion(-) delete mode 100644 nbproject/t1 diff --git a/nbproject/t1 b/nbproject/t1 deleted file mode 100644 index 8b13789..0000000 --- a/nbproject/t1 +++ /dev/null @@ -1 +0,0 @@ - From dcb089ab5d0a8f0b34eb259a032f0ecf14760dbf Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 11:09:37 +0530 Subject: [PATCH 11/20] Delete src/fees_management_system/t1 --- src/fees_management_system/t1 | 1 - 1 file changed, 1 deletion(-) delete mode 100644 src/fees_management_system/t1 diff --git a/src/fees_management_system/t1 b/src/fees_management_system/t1 deleted file mode 100644 index 8b13789..0000000 --- a/src/fees_management_system/t1 +++ /dev/null @@ -1 +0,0 @@ - From 7f608140d237e3b3eef396d17132b4892865afe3 Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 11:09:55 +0530 Subject: [PATCH 12/20] Delete test/t1 --- test/t1 | 1 - 1 file changed, 1 deletion(-) delete mode 100644 test/t1 diff --git a/test/t1 b/test/t1 deleted file mode 100644 index 8b13789..0000000 --- a/test/t1 +++ /dev/null @@ -1 +0,0 @@ - From 0ba61df6a4402a2dede08bac40d4eb2db5a17073 Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 12:04:05 +0530 Subject: [PATCH 13/20] Update README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 49c0269..3d2f7fc 100644 --- a/README.md +++ b/README.md @@ -4,5 +4,6 @@ 3. Enable fee addition with Java, offering PDF receipt printing, and Executed SQL for efficient data storage and retrieval, allowing easy post-saving information editing. 4. The developed CRUD application will offer a robust and user-friendly platform for managing data records using Java programming languages integrated with MySQL database. Users will be able to perform CRUD operations efficiently, including entering, editing, and deleting data records, thereby enhancing data management capabilities. 5. The application will contribute to improved data organization, accessibility, and reliability, ultimately facilitating effective decision-making and enhancing productivity. -6. Additionally, the integration of security measures will ensure the confidentiality and integrity of the data stored in the MySQL database, safeguarding it against potential security threats. +6. Additionally, the integration of security measures will ensure the confidentiality and integrity of the data stored in the MySQL database, safeguarding it against potential security threats. +7. From e138ae042cd9d4bac212c8e07df12578f187ae0d Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 12:14:39 +0530 Subject: [PATCH 14/20] Create t --- Password_Manager/t | 1 + 1 file changed, 1 insertion(+) create mode 100644 Password_Manager/t diff --git a/Password_Manager/t b/Password_Manager/t new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/Password_Manager/t @@ -0,0 +1 @@ + From dc572dcfb74f97fd4bb261f762da91ae586797ae Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 12:16:52 +0530 Subject: [PATCH 15/20] #11 Password_Manager #11 Team Name: Striver --- Password_Manager/backup.txt | 2 + Password_Manager/main | Bin 0 -> 1389656 bytes Password_Manager/main.cpp | 211 +++++++++++++++++++++++++++++++++ Password_Manager/passwords.txt | 5 + 4 files changed, 218 insertions(+) create mode 100644 Password_Manager/backup.txt create mode 100644 Password_Manager/main create mode 100644 Password_Manager/main.cpp create mode 100644 Password_Manager/passwords.txt diff --git a/Password_Manager/backup.txt b/Password_Manager/backup.txt new file mode 100644 index 0000000..65c5826 --- /dev/null +++ b/Password_Manager/backup.txt @@ -0,0 +1,2 @@ +yash:@@/TC:s::Google:email:Riya:4u +/:wC U0 :shivam::25#E[,:Instageam:email:Riya:<M=-T[1:whatshaap:social diff --git a/Password_Manager/main b/Password_Manager/main new file mode 100644 index 0000000000000000000000000000000000000000..6502e4efc85df5b3524b31e7d2c9b191e6a9929c GIT binary patch literal 1389656 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�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�fr%$Pxw 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%0ASR7Zzx$G*oW( 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�`M7_V@ig9eu5tdY@z5_y$L^47=#QSI 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 literal 0 HcmV?d00001 diff --git a/Password_Manager/main.cpp b/Password_Manager/main.cpp new file mode 100644 index 0000000..53a4685 --- /dev/null +++ b/Password_Manager/main.cpp @@ -0,0 +1,211 @@ +#include <iostream> +#include <fstream> +#include <string> +#include <vector> +#include <cstdlib> +#include <ctime> +#include <sys/stat.h> +#include <sys/types.h> + +using namespace std; + +// Encryption key +const string ENCRYPTION_KEY = "my_encryption_key"; +const string BACKUP_FILE = "backup.txt"; +const string PASSWORDS_FILE = "passwords.txt"; + +// Structure to store account information +struct Account { + string username; + string password; + string website; + string category; // Added category field +}; + +// Function to generate a random password of specified length +string generatePassword(int length) { + string password = ""; + const string characters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!@#$%^&*()-_=+"; + int charLength = characters.length(); + + srand(time(0)); + for (int i = 0; i < length; ++i) { + int index = rand() % charLength; + password += characters[index]; + } + + return password; +} + +// Function to encrypt the password +string encryptPassword(const string& password) { + string encryptedPassword = password; + const string& ENCRYPTION_KEY = "my_encryption_key"; // Moved to local scope + for (int i = 0; i < password.length(); ++i) { + encryptedPassword[i] ^= ENCRYPTION_KEY[i % ENCRYPTION_KEY.length()]; + } + return encryptedPassword; +} + +// Function to store the account in a secure manner +void storeAccount(const string& username, const string& password, const string& website, const string& category) { + // Encrypt the password before storing it + string encryptedPassword = encryptPassword(password); + + ofstream outfile(PASSWORDS_FILE, ios::app); + if (!outfile.is_open()) { + cerr << "Error: Could not open passwords.txt for writing." << endl; + return; + } + outfile << username << ":" << encryptedPassword << ":" << website << ":" << category << endl; + outfile.close(); +} + +// Function to decrypt the password +string decryptPassword(const string& encryptedPassword) { + string decryptedPassword = encryptedPassword; + const string& ENCRYPTION_KEY = "my_encryption_key"; // Moved to local scope + for (int i = 0; i < encryptedPassword.length(); ++i) { + decryptedPassword[i] ^= ENCRYPTION_KEY[i % ENCRYPTION_KEY.length()]; + } + return decryptedPassword; +} + +// Function to read and decrypt accounts from file +vector<Account> readAccounts() { + vector<Account> accounts; + ifstream infile(PASSWORDS_FILE); + if (!infile.is_open()) { + cerr << "Error: Could not open passwords.txt for reading." << endl; + return accounts; + } + string username, encryptedPassword, website, category; + while (infile >> username >> encryptedPassword >> website >> category) { + Account account; + account.username = username; + account.password = decryptPassword(encryptedPassword); + account.website = website; + account.category = category; + accounts.push_back(account); + } + infile.close(); + return accounts; +} + +// Function to validate the password strength +bool validatePassword(const string& password) { + // Password should have at least 8 characters + if (password.length() < 8) { + return false; + } + + // Password should contain at least one uppercase letter, one lowercase letter, one digit, and one special character + bool hasUpper = false, hasLower = false, hasDigit = false, hasSpecial = false; + for (char c : password) { + if (isupper(c)) hasUpper = true; + if (islower(c)) hasLower = true; + if (isdigit(c)) hasDigit = true; + if (!isalnum(c)) hasSpecial = true; + } + + return hasUpper && hasLower && hasDigit && hasSpecial; +} + +// Function to backup password data +void backupData() { + // Read current data + vector<Account> accounts = readAccounts(); + + // Write data to backup file + ofstream outfile(BACKUP_FILE); + if (!outfile.is_open()) { + cerr << "Error: Could not open " << BACKUP_FILE << " for writing." << endl; + return; + } + for (const auto& account : accounts) { + outfile << account.username << ":" << account.password << ":" << account.website << ":" << account.category << endl; + } + outfile.close(); + + cout << "Data backed up to " << BACKUP_FILE << endl; +} + +// Function to restore password data from backup +void restoreData() { + // Read data from backup file + ifstream infile(BACKUP_FILE); + if (!infile.is_open()) { + cerr << "Error: Could not open " << BACKUP_FILE << " for reading." << endl; + return; + } + string username, password, website, category; + while (infile >> username >> password >> website >> category) { + storeAccount(username, password, website, category); + } + infile.close(); + + cout << "Data restored from " << BACKUP_FILE << endl; +} + +// Function to prompt the user to enter a valid password +string getValidPassword() { + while (true) { + cout << "Enter your password: "; + string password; + cin >> password; + + if (validatePassword(password)) { + return password; + } else { + cout << "Password is weak. It should have at least 8 characters, one uppercase, one lowercase, one digit, and one special character." << endl; + } + } +} + +int main() { + int passwordLength; + string username, password, website, category; + + cout << "Enter your username: "; + cin >> username; + + // Generate a password if the user wants to + char generate; + cout << "Do you want to generate a password? (Y/N): "; + cin >> generate; + if (generate == 'Y' || generate == 'y') { + cout << "Enter the desired length of your password: "; + cin >> passwordLength; + password = generatePassword(passwordLength); + cout << "Generated password: " << password << endl; + } else { + password = getValidPassword(); // Use the new function to get a valid password + } + + cout << "Enter the website: "; + cin >> website; + + cout << "Enter the category (e.g., email, social, finance): "; + cin >> category; + + storeAccount(username, password, website, category); + cout << "Account saved securely." << endl; + + cout << "Decrypting and reading stored accounts:" << endl; + vector<Account> accounts = readAccounts(); + for (const auto& account : accounts) { + cout << "Website: " << account.website << ", Username: " << account.username << ", Password: " << account.password << ", Category: " << account.category << endl; + } + + // Backup and restore functionality + char backupRestore; + cout << "Do you want to backup (B) or restore (R) data? (B/R): "; + cin >> backupRestore; + if (backupRestore == 'B' || backupRestore == 'b') { + backupData(); + } else if (backupRestore == 'R' || backupRestore == 'r') { + restoreData(); + } + + return 0; +} diff --git a/Password_Manager/passwords.txt b/Password_Manager/passwords.txt new file mode 100644 index 0000000..e2858ee --- /dev/null +++ b/Password_Manager/passwords.txt @@ -0,0 +1,5 @@ +yash:@@/TC  :Google:email +Riya:4u / :Instagram:social +shivam::25#E[,:Instageam:email +Riya:<M=-T[1:whatshaap:social +Riya:G1::^QGJ :instagram:social From 0660611c14accae8d2d06f3011dc0bbbe1da171c Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 12:21:42 +0530 Subject: [PATCH 16/20] Update README.md Team Name: Striver td Updated Commmit 2 --- README.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/README.md b/README.md index 3d2f7fc..1e78254 100644 --- a/README.md +++ b/README.md @@ -7,3 +7,20 @@ 6. Additionally, the integration of security measures will ensure the confidentiality and integrity of the data stored in the MySQL database, safeguarding it against potential security threats. 7. +# Password_Manager by Cpp +Team Name: Striver +In today's digital age, the proliferation of online accounts has led to the challenge of managing numerous passwords securely. Users often resort to using weak or repetitive passwords, which compromises the security of their accounts. Therefore, there is a pressing need for a robust and reliable password manager application that can securely store and manage passwords for various accounts across different platforms. + +Requirements: + +1. Secure Password Storage: Develop a mechanism to securely store passwords using encryption techniques to prevent unauthorized access. +2. Password Generation: Implement a feature for generating strong, random passwords to enhance security. +3. Account Management: Allow users to categorize and organize their accounts efficiently, facilitating easy retrieval and management. +4. Cross-Platform Compatibility: Ensure compatibility across multiple devices and platforms to enable seamless synchronization of passwords. +5. User Authentication: Implement a robust authentication mechanism to ensure that only authorized users can access the password manager application. +6. Intuitive User Interface: Design an intuitive and user-friendly interface to enhance usability and user experience. +7. Backup and Restore: Provide functionality for backing up and restoring password data to prevent data loss. +8. Password Strength Analysis: Include a feature to analyze the strength of passwords and prompt users to update weak or compromised passwords. +9. Multi-Language Support: Support multiple languages to cater to a diverse user base. +10. Customization Options: Allow users to customize settings and preferences according to their requirements. + From 3e7a6eb6568d37ea2980d5a5c9ef15c157b1f7a1 Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 12:29:04 +0530 Subject: [PATCH 17/20] Create lang_support.py Team Name: Striver --- Password_Manager/lang_support.py | 50 ++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 Password_Manager/lang_support.py diff --git a/Password_Manager/lang_support.py b/Password_Manager/lang_support.py new file mode 100644 index 0000000..f7a0bad --- /dev/null +++ b/Password_Manager/lang_support.py @@ -0,0 +1,50 @@ +import numpy as np +import regex as re +import pandas as pd +import matplotlib.pyplot as plt +import seaborn as sns +import statistics +import math +import os + +from sklearn.model_selection import StratifiedKFold +from sklearn.metrics import accuracy_score +from sklearn.model_selection import train_test_split + +import tensorflow as tf +import tensorflow.keras.backend as K +import tokenizers +from transformers import RobertaTokenizer, TFRobertaModel + +from collections import Counter + +import warnings +warnings.filterwarnings("ignore") + +# Detect hardware, return appropriate distribution strategy (you can see that it is pretty easy to set up). +try: + # TPU detection. No parameters necessary if TPU_NAME environment variable is set (always set in Kaggle) + tpu = tf.distribute.cluster_resolver.TPUClusterResolver() + tf.config.experimental_connect_to_cluster(tpu) + tf.tpu.experimental.initialize_tpu_system(tpu) + strategy = tf.distribute.experimental.TPUStrategy(tpu) + print('Running on TPU ', tpu.master()) +except ValueError: + # Default distribution strategy in Tensorflow. Works on CPU and single GPU. + strategy = tf.distribute.get_strategy() + +print('Number of replicas:', strategy.num_replicas_in_sync) + +MODEL_NAME = 'roberta-base' +MAX_LEN = 256 +ARTIFACTS_PATH = '../artifacts/' + +BATCH_SIZE = 8 * strategy.num_replicas_in_sync +EPOCHS = 3 + +if not os.path.exists(ARTIFACTS_PATH): + os.makedirs(ARTIFACTS_PATH) + + + + From 0d2d7657a6c3b10c45ad16be1cb23f70af2c61e9 Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 16:58:42 +0530 Subject: [PATCH 18/20] Create t1 --- Property Website/t1 | 1 + 1 file changed, 1 insertion(+) create mode 100644 Property Website/t1 diff --git a/Property Website/t1 b/Property Website/t1 new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/Property Website/t1 @@ -0,0 +1 @@ + From 5c3602b56ade61838655b408421ea92eaafd70bd Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 17:00:39 +0530 Subject: [PATCH 19/20] Add files via upload --- Property Website/README.md | 57 ++ Property Website/favicon.svg | 9 + Property Website/index.html | 1464 +++++++++++++++++++++++++++++++ Property Website/index.txt | 307 +++++++ Property Website/style-guide.md | 80 ++ 5 files changed, 1917 insertions(+) create mode 100644 Property Website/README.md create mode 100644 Property Website/favicon.svg create mode 100644 Property Website/index.html create mode 100644 Property Website/index.txt create mode 100644 Property Website/style-guide.md diff --git a/Property Website/README.md b/Property Website/README.md new file mode 100644 index 0000000..469f6e7 --- /dev/null +++ b/Property Website/README.md @@ -0,0 +1,57 @@ +<div align="center"> + + ![GitHub repo size](https://img.shields.io/github/repo-size/codewithsadee/homeverse) + ![GitHub stars](https://img.shields.io/github/stars/codewithsadee/homeverse?style=social) + ![GitHub forks](https://img.shields.io/github/forks/codewithsadee/homeverse?style=social) +[![Twitter Follow](https://img.shields.io/twitter/follow/codewithsadee_?style=social)](https://twitter.com/intent/follow?screen_name=codewithsadee_) + [![YouTube Video Views](https://img.shields.io/youtube/views/6HZ4nZmU_pE?style=social)](https://youtu.be/6HZ4nZmU_pE) + + <br /> + <br /> + + <img src="./readme-images/project-logo.png" /> + + <h2 align="center">Homeverse - Real estate website</h2> + + Homeverse is fully responsive Real estate website, <br />Responsive for all devices, built using HTML, CSS, and JavaScript. + + <a href="https://codewithsadee.github.io/homeverse/"><strong>➥ Live Demo</strong></a> + +</div> + +<br /> + +### Demo Screeshots + +![homeverse Desktop Demo](./readme-images/desktop.png "Desktop Demo") +![homeverse Mobile Demo](./readme-images/mobile.png "Mobile Demo") + +### Prerequisites + +Before you begin, ensure you have met the following requirements: + +* [Git](https://git-scm.com/downloads "Download Git") must be installed on your operating system. + +### Run Locally + +To run **Homeverse** locally, run this command on your git bash: + +Linux and macOS: + +```bash +sudo git clone https://github.com/codewithsadee/homeverse.git +``` + +Windows: + +```bash +git clone https://github.com/codewithsadee/homeverse.git +``` + +### Contact + +If you want to contact with me you can reach me at [Twitter](https://www.twitter.com/codewithsadee). + +### License + +This project is **free to use** and does not contains any license. diff --git a/Property Website/favicon.svg b/Property Website/favicon.svg new file mode 100644 index 0000000..7c96fcd --- /dev/null +++ b/Property Website/favicon.svg @@ -0,0 +1,9 @@ +<svg width="70" height="70" viewBox="0 0 70 70" fill="none" xmlns="http://www.w3.org/2000/svg"> +<rect width="70" height="70" rx="10" fill="white"/> +<path d="M19.4451 51.4804V31.7813C18.5457 31.7813 17.6832 32.1363 17.0472 32.7682C16.4112 33.4001 16.0537 34.2572 16.0535 35.151V52.1196C17.1652 51.8851 18.2957 51.672 19.4451 51.4804Z" fill="#FF5A3C"/> +<path d="M26.8259 50.5573V22.685C25.743 22.7594 24.7289 23.2395 23.9885 24.0282C23.248 24.817 22.8363 25.8556 22.8366 26.9343V50.984C24.1497 50.814 25.4794 50.6718 26.8259 50.5573Z" fill="#FF5A3C"/> +<path d="M35 50.2146C35.5686 50.2146 36.1345 50.2236 36.6994 50.2336V13C35.2973 13 33.9527 13.5535 32.9613 14.5388C31.9698 15.5241 31.4128 16.8604 31.4128 18.2539V50.2851C32.6028 50.2417 33.7973 50.2146 35 50.2146Z" fill="#FF5A3C"/> +<path d="M46.2746 50.8701V22.6741C45.1372 22.6744 44.0466 23.1235 43.2424 23.9227C42.4381 24.7219 41.9862 25.8059 41.986 26.9362V50.4705C43.4337 50.5705 44.8632 50.7037 46.2746 50.8701Z" fill="#FF5A3C"/> +<path d="M53.9547 52.1223V31.7795C53.5092 31.7795 53.0681 31.8667 52.6566 32.0362C52.245 32.2056 51.8711 32.454 51.5562 32.7671C51.2412 33.0802 50.9914 33.4518 50.821 33.8609C50.6507 34.2699 50.563 34.7083 50.5631 35.151V51.4822C51.7112 51.6751 52.8418 51.8884 53.9547 52.1223Z" fill="#FF5A3C"/> +<path d="M35 52.5943C23.3825 52.5943 12.8321 54.6511 5 58H65C57.1679 54.6511 46.6175 52.5943 35 52.5943Z" fill="#FF5A3C"/> +</svg> diff --git a/Property Website/index.html b/Property Website/index.html new file mode 100644 index 0000000..e66f0ac --- /dev/null +++ b/Property Website/index.html @@ -0,0 +1,1464 @@ +<!DOCTYPE html> +<html lang="en"> + +<head> + <meta charset="UTF-8"> + <meta http-equiv="X-UA-Compatible" content="IE=edge"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <title>Homeverse - Find your dream house + + + + + + + + + + + + + + + + + +
+ +
+ +
+
+ + + +
+ + + +
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + +
+ +
+
+ +
+ + + + + +
+
+ + + +
+
+ +
+ +

+ + + Real Estate Agency +

+ +

Find Your Dream House By Us

+ +

+ Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore. +

+ + + +
+ +
+ Modern house model +
+ +
+
+ + + + + + + +
+
+ +
+ House interior + + House interior +
+ +
+ +

About Us

+ +

The Leading Real Estate Rental Marketplace.

+ +

+ Over 39,000 people work for us in more than 70 countries all over the This breadth of global coverage, + combined with + specialist services +

+ +
    + +
  • +
    + +
    + +

    Smart Home Design

    +
  • + +
  • +
    + +
    + +

    Beautiful Scene Around

    +
  • + +
  • +
    + +
    + +

    Exceptional Lifestyle

    +
  • + +
  • +
    + +
    + +

    Complete 24/7 Security

    +
  • + +
+ +

+ "Enimad minim veniam quis nostrud exercitation + llamco laboris. Lorem ipsum dolor sit amet" +

+ + Our Services + +
+ +
+
+ + + + + + + +
+
+ +

Our Services

+ +

Our Main Focus

+ +
    + +
  • +
    + +
    + Service icon +
    + +

    + Buy a home +

    + +

    + over 1 million+ homes for sale available on the website, we can match you with a house you will want + to call home. +

    + + + Find A Home + + + + +
    +
  • + +
  • +
    + +
    + Service icon +
    + +

    + Rent a home +

    + +

    + over 1 million+ homes for sale available on the website, we can match you with a house you will want + to call home. +

    + + + Find A Home + + + + +
    +
  • + +
  • +
    + +
    + Service icon +
    + +

    + Sell a home +

    + +

    + over 1 million+ homes for sale available on the website, we can match you with a house you will want + to call home. +

    + + + Find A Home + + + + +
    +
  • + +
+ +
+
+ + + + + + + +
+
+ +

Properties

+ +

Featured Listings

+ +
    + +
  • +
    + +
    + + + New Apartment Nice View + + +
    For Rent
    + + + +
    + +
    + +
    + $34,900/Month +
    + +

    + New Apartment Nice View +

    + +

    + Beautiful Huge 1 Family House In Heart Of Westbury. Newly Renovated With New Wood +

    + +
      + +
    • + 3 + + + + Bedrooms +
    • + +
    • + 2 + + + + Bathrooms +
    • + +
    • + 3450 + + + + Square Ft +
    • + +
    + +
    + + + +
    +
  • + +
  • +
    + +
    + + + Modern Apartments + + +
    For Sales
    + + + +
    + +
    + +
    + $34,900/Month +
    + +

    + Modern Apartments +

    + +

    + Beautiful Huge 1 Family House In Heart Of Westbury. Newly Renovated With New Wood +

    + +
      + +
    • + 3 + + + + Bedrooms +
    • + +
    • + 2 + + + + Bathrooms +
    • + +
    • + 3450 + + + + Square Ft +
    • + +
    + +
    + + + +
    +
  • + +
  • +
    + +
    + + + Comfortable Apartment + + +
    For Rent
    + + + +
    + +
    + +
    + $34,900/Month +
    + +

    + Comfortable Apartment +

    + +

    + Beautiful Huge 1 Family House In Heart Of Westbury. Newly Renovated With New Wood +

    + +
      + +
    • + 3 + + + + Bedrooms +
    • + +
    • + 2 + + + + Bathrooms +
    • + +
    • + 3450 + + + + Square Ft +
    • + +
    + +
    + + + +
    +
  • + +
  • +
    + +
    + + + Luxury villa in Rego Park + + +
    For Rent
    + + + +
    + +
    + +
    + $34,900/Month +
    + +

    + Luxury villa in Rego Park +

    + +

    + Beautiful Huge 1 Family House In Heart Of Westbury. Newly Renovated With New Wood +

    + +
      + +
    • + 3 + + + + Bedrooms +
    • + +
    • + 2 + + + + Bathrooms +
    • + +
    • + 3450 + + + + Square Ft +
    • + +
    + +
    + + + +
    +
  • + +
+ +
+
+ + + + + + + +
+ +
+ + + + + + + +
+
+ +

News & Blogs

+ +

Leatest News Feeds

+ + + +
+
+ + + + + + + +
+
+ +
+
+

Looking for a dream home?

+ +

We can help you realize your dream of a new home

+
+ + +
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Property Website/index.txt b/Property Website/index.txt new file mode 100644 index 0000000..d62a1d1 --- /dev/null +++ b/Property Website/index.txt @@ -0,0 +1,307 @@ +Homeverse - Find your dream house + + +# HEADER + + +info@homeverse.com + + +15/A, Nest Tower, NYC + + + + + + +Add Listing + +alt = Homeverse logo + +aria-label = Close Menu + + +Home +About +Service +Property +Blog +Contact + +aria-label = Search + +Search + +aria-label = Profile + +Profile + +aria-label = Cart + +Cart + +aria-label = Open Menu + +Menu + + + +# HERO + + +Real Estate Agency + +Find Your Dream House By Us + +Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore. + +Make An Enquiry + +alt = Modern house model + + + +# ABOUT + +alt = House interior + +About Us + +The Leading Real Estate Rental Marketplace. + +Over 39,000 people work for us in more than 70 countries all over the This breadth of global coverage, combined with specialist services + + +Smart Home Design + + +Beautiful Scene Around + + +Exceptional Lifestyle + + +Complete 24/7 Security + +"Enimad minim veniam quis nostrud exercitation +llamco laboris. Lorem ipsum dolor sit amet" + +Our Services + + + +#SERVICE + +Our Services + +Our Main Focus + +alt = Service icon + +Buy a home + +over 1 million+ homes for sale available on the website, we can match you with a house you will want to call home. + +Find A Home + + +Rent a home + +Sell a home + + + +#PROPERTY + +Properties + +Featured Listings + +alt = New Apartment Nice View + +For Rent + + +Belmont Gardens, Chicago + + +4 + + +2 + +$34,900/Month + +New Apartment Nice View + +Beautiful Huge 1 Family House In Heart Of Westbury. Newly Renovated With New Wood + +3 + +Bedrooms + +2 + +Bathrooms + +3450 + +Square Ft + +William Seklo +Estate Agents + + + + + + +For Sales + +alt = Modern Apartments +Modern Apartments + +alt = Comfortable Apartment +Comfortable Apartment + +alt = Luxury villa in Rego Park +Luxury villa in Rego Park + + + +# FEATURES + +Our Aminities + +Building Aminities + + +Parking Space + + + + +Swimming Pool + + +Private Security + + +Medical Center + + +Library Area + + +King Size Beds + + +Smart Homes + + +Kid’s Playland + + + +# BLOG + +News & Blogs + +Leatest News Feeds + +alt = The Most Inspiring Interior Design Of 2021 + + +by: Admin + + +Interior + +The Most Inspiring Interior Design Of 2021 + + +Apr 27, 2022 + +Read More + + +alt = Recent Commercial Real Estate Transactions + +Estate + +Recent Commercial Real Estate Transactions + + +alt = Renovating a Living Room? Experts Share Their Secrets + +Room + +Renovating a Living Room? Experts Share Their Secrets + + + +# CTA + +Looking for a dream home? + +We can help you realize your dream of a new home + +Explore Properties + + + + +# FOOTER + +alt = Homeverse logo + +Lorem Ipsum is simply dummy text of the and typesetting industry. Lorem Ipsum is dummy text of the printing. + + +Brooklyn, New York, United States + + ++0123-456789 + + +contact@homeverse.com + + + + + + +Company + +About +Blog +All Products +Locations Map +FAQ +Contact us + +Services + +Order tracking +Wish List +Login +My account +Terms & Conditions +Promotional Offers + +Customer Care + +Login +My account +Wish List +Order tracking +FAQ +Contact us + +© 2022 codewithsadee. All Rights Reserved + + + +# GO TO TOP + + \ No newline at end of file diff --git a/Property Website/style-guide.md b/Property Website/style-guide.md new file mode 100644 index 0000000..ff49cba --- /dev/null +++ b/Property Website/style-guide.md @@ -0,0 +1,80 @@ +# Essential Stuff + +## Html import links + +Google font + +``` html + + + +``` + +Ionicon + +``` html + + +``` + +--- + +## Colors + +``` css +--dark-jungle-green: hsl(188, 63%, 7%); +--prussian-blue: hsl(200, 69%, 14%); +--raisin-black-1: hsl(227, 29%, 13%); +--raisin-black-2: hsl(229, 17%, 19%); +--yellow-green: hsl(89, 72%, 45%); +--orange-soda: hsl(9, 100%, 62%); +--cultured-1: hsl(0, 0%, 93%); +--cultured-2: hsl(192, 24%, 96%); +--misty-rose: hsl(7, 56%, 91%); +--alice-blue: hsl(210, 100%, 97%); +--seashell: hsl(8, 100%, 97%); +--cadet: hsl(200, 15%, 43%); +--white: hsl(0, 0%, 100%); +--black: hsl(0, 0%, 0%); +--opal: hsl(180, 20%, 62%); +``` + +## Typography + +``` css +--ff-nunito-sans: "Nunito Sans", sans-serif; +--ff-poppins: "Poppins", sans-serif; + +--fs-1: 1.875rem; +--fs-2: 1.5rem; +--fs-3: 1.375rem; +--fs-4: 1.125rem; +--fs-5: 0.875rem; +--fs-6: 0.813rem; +--fs-7: 0.75rem; + +--fw-500: 500; +--fw-600: 600; +--fw-700: 700; +``` + +## Transition + +``` css +--transition: 0.25s ease; +``` + +## Spacing + +``` css +--section-padding: 100px; +``` + +## Shadow + +``` css +--shadow-1: 0 5px 20px 0 hsla(219, 56%, 21%, 0.1); +--shadow-2: 0 16px 32px hsla(188, 63%, 7%, 0.1); +``` From 81db403b8acfcc8d9fa8535885ba1c1a7c59107e Mon Sep 17 00:00:00 2001 From: YASH-CODEIT <117018281+YASH-CODEIT@users.noreply.github.com> Date: Sun, 25 Feb 2024 17:01:06 +0530 Subject: [PATCH 20/20] Delete Property Website/t1 --- Property Website/t1 | 1 - 1 file changed, 1 deletion(-) delete mode 100644 Property Website/t1 diff --git a/Property Website/t1 b/Property Website/t1 deleted file mode 100644 index 8b13789..0000000 --- a/Property Website/t1 +++ /dev/null @@ -1 +0,0 @@ -