66import java .sql .ResultSet ;
77import java .sql .SQLException ;
88import java .time .format .DateTimeFormatter ;
9- import java .util .HashMap ;
10- import java .util .List ;
11- import java .util .Map ;
12- import java .util .ResourceBundle ;
9+ import java .util .*;
1310import java .util .logging .Level ;
1411import java .util .logging .Logger ;
1512import javafx .collections .FXCollections ;
1916import javafx .scene .control .*;
2017import javafx .scene .control .cell .PropertyValueFactory ;
2118import javafx .scene .text .Text ;
19+ import satyamconsignment .common .Constants ;
2220import satyamconsignment .common .DatabaseHandler ;
2321import satyamconsignment .common .Utils ;
2422import satyamconsignment .ui .Input .PaymentEntry .PaymentEntryController ;
2523import satyamconsignment .model .PaymentItem ;
2624
2725public class AddPayment implements Initializable {
2826
29- private DateTimeFormatter formatter ;
3027 private List <PaymentItem > paymentItems ;
3128 private List <String > supplierNameComboList ;
3229 private List <String > billNoComboList ;
@@ -97,10 +94,9 @@ public class AddPayment implements Initializable {
9794
9895 @ Override
9996 public void initialize (URL url , ResourceBundle rb ) {
100- formatter = DateTimeFormatter .ofPattern ("dd-MM-yyyy" );
101- paymentItems = FXCollections .observableArrayList ();
102- supplierNameComboList = FXCollections .observableArrayList ();
103- billNoComboList = FXCollections .observableArrayList ();
97+ paymentItems = new ArrayList <>();
98+ supplierNameComboList = new ArrayList <>();
99+ billNoComboList = new ArrayList <>();
104100
105101 bill_no_col .setCellValueFactory (new PropertyValueFactory <>("billNo" ));
106102 bill_amt_col .setCellValueFactory (new PropertyValueFactory <>("billAmount" ));
@@ -112,12 +108,16 @@ public void initialize(URL url, ResourceBundle rb) {
112108 due_col .setCellValueFactory (new PropertyValueFactory <>("due" ));
113109 amount_paid_col .setCellValueFactory (new PropertyValueFactory <>("amountPaid" ));
114110
115- payment_tableview . setItems ( FXCollections . observableArrayList ( paymentItems ) );
111+ refreshPaymentTableView ( );
116112 fillSupplierCombo ();
117113
118114 updateLastVoucher ();
119115 }
120116
117+ private void refreshPaymentTableView () {
118+ payment_tableview .setItems (FXCollections .observableArrayList (paymentItems ));
119+ }
120+
121121 @ FXML
122122 private void addPayment (ActionEvent ignoredEvent ) {
123123 if (bill_no_combo .getValue ().isEmpty () || bill_amount_field .getText ().isEmpty ()
@@ -130,12 +130,15 @@ private void addPayment(ActionEvent ignoredEvent) {
130130 return ;
131131 }
132132
133+ DateTimeFormatter dateTimeFormatter = DateTimeFormatter
134+ .ofPattern (Constants .DATE_TIME_FORMAT );
135+
133136 paymentItems .add (new PaymentItem (bill_no_combo .getValue (), bill_amount_field .getText (),
134137 bill_date_field .getText (), buyer_name_field .getText (), due_amount_field .getText (),
135138 amount_paid_field .getText (), bank_field .getText (), dd_no_field .getText (),
136- formatter .format (dd_date_field .getValue ())));
139+ dateTimeFormatter .format (dd_date_field .getValue ())));
137140
138- payment_tableview . setItems ( FXCollections . observableArrayList ( paymentItems ) );
141+ refreshPaymentTableView ( );
139142
140143 clearRepeatingFields ();
141144 updateTotalAmountPaid ();
@@ -159,12 +162,18 @@ private void replacePayment(ActionEvent ignoredEvent) {
159162 return ;
160163 }
161164
165+ DateTimeFormatter dateTimeFormatter = DateTimeFormatter
166+ .ofPattern (Constants .DATE_TIME_FORMAT );
167+
162168 paymentItems .set (payment_tableview .getSelectionModel ().getSelectedIndex (),
163169 new PaymentItem (bill_no_combo .getValue (), bill_amount_field .getText (),
164170 bill_date_field .getText (), buyer_name_field .getText (),
165171 due_amount_field .getText (), amount_paid_field .getText (),
166172 bank_field .getText (), dd_no_field .getText (),
167- formatter .format (dd_date_field .getValue ())));
173+ dateTimeFormatter .format (dd_date_field .getValue ())));
174+
175+ refreshPaymentTableView ();
176+
168177 clearRepeatingFields ();
169178 updateTotalAmountPaid ();
170179 }
@@ -176,6 +185,7 @@ private void deletePayment(ActionEvent ignoredEvent) {
176185 return ;
177186 }
178187 paymentItems .remove (payment_tableview .getSelectionModel ().getSelectedIndex ());
188+ refreshPaymentTableView ();
179189 updateTotalAmountPaid ();
180190 }
181191
@@ -216,12 +226,14 @@ private void saveData(ActionEvent ignoredEvent) {
216226 return ;
217227 }
218228 Connection connection = DatabaseHandler .getInstance ().getConnection ();
229+ DateTimeFormatter dateTimeFormatter = DateTimeFormatter
230+ .ofPattern (Constants .DATE_TIME_FORMAT );
219231 try {
220232 connection .setAutoCommit (false );
221233 String sql = "INSERT INTO `Payment_Entry_Table`(`Voucher No.`,`Voucher Date`,`Supplier Name`,`Total Amount`) VALUES (?,?,?,?)" ;
222234 PreparedStatement preparedStatement = connection .prepareStatement (sql );
223235 preparedStatement .setString (1 , voucher_no_field .getText ());
224- preparedStatement .setString (2 , formatter .format (voucher_date_field .getValue ()));
236+ preparedStatement .setString (2 , dateTimeFormatter .format (voucher_date_field .getValue ()));
225237 preparedStatement .setString (3 , supplier_name_combo .getValue ());
226238 preparedStatement .setString (4 , total_amount_paid_field .getText ());
227239 preparedStatement .execute ();
@@ -263,6 +275,7 @@ private void saveData(ActionEvent ignoredEvent) {
263275 Logger .getLogger (PaymentEntryController .class .getName ()).log (Level .SEVERE , null , ex );
264276 }
265277 paymentItems .clear ();
278+ refreshPaymentTableView ();
266279 }
267280
268281 private void updateLastVoucher () {
0 commit comments